Sha256: d5d57f5ef817b3cb55411dcaaa39f6a7bab615b3e983e2c0408695ea79188bd6

Contents?: true

Size: 307 Bytes

Versions: 160

Compression:

Stored size: 307 Bytes

Contents

class Object
  # Tries the given methods and returns the first one to return a value,
  # ultimately returns nil if no value is found.
  def try(*methods)
    methods.each do |method|
      if self.respond_to?(method)
        val = send(method)
        return val if val
      end
    end
    nil
  end
end

Version data entries

160 entries across 160 versions & 1 rubygems

Version Path
origen-0.4.0 lib/origen/core_ext/object.rb
origen-0.3.0 lib/origen/core_ext/object.rb
origen-0.2.6 lib/origen/core_ext/object.rb
origen-0.2.5 lib/origen/core_ext/object.rb
origen-0.2.4 lib/origen/core_ext/object.rb
origen-0.2.3 lib/origen/core_ext/object.rb
origen-0.2.2 lib/origen/core_ext/object.rb
origen-0.2.1 lib/origen/core_ext/object.rb
origen-0.2.0 lib/origen/core_ext/object.rb
origen-0.1.3 lib/origen/core_ext/object.rb
origen-0.1.2 lib/origen/core_ext/object.rb
origen-0.1.1 lib/origen/core_ext/object.rb
origen-0.1.0 lib/origen/core_ext/object.rb
origen-0.0.9 lib/origen/core_ext/object.rb
origen-0.0.8 lib/origen/core_ext/object.rb
origen-0.0.6 lib/origen/core_ext/object.rb
origen-0.0.5 lib/origen/core_ext/object.rb
origen-0.0.4 lib/origen/core_ext/object.rb
origen-0.0.3 lib/origen/core_ext/object.rb
origen-0.0.2 lib/origen/core_ext/object.rb