2008-03-24

returning的用法

Ruby中返回值的关键字除了return外,还有一个returning,使用returning返回结果时,可以对结果进行处理。

Rails中的示例代码如下:

def extract_namespace(record_or_hash_or_array)
    returning "" do |namespace|
        if record_or_hash_or_array.is_a?(Array)
           record_or_hash_or_array.delete_if do |record_or_namespace|
              if record_or_namespace.is_a?(String) || record_or_namespace.is_a?(Symbol)
                namespace << "#{record_or_namespace}_"
              end
            end
        end  
    end
end
 其中namespace是returning后面的值,传入后面的block中执行后,返回namespace的结果。

 

评论
发表评论

您还没有登录,请登录后发表评论

phoenix520
搜索本博客
最近加入圈子
存档
最新评论