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.7.31 lib/origen/core_ext/object.rb
origen-0.7.30 lib/origen/core_ext/object.rb
origen-0.7.29 lib/origen/core_ext/object.rb
origen-0.7.28 lib/origen/core_ext/object.rb
origen-0.7.27 lib/origen/core_ext/object.rb
origen-0.7.26 lib/origen/core_ext/object.rb
origen-0.7.25 lib/origen/core_ext/object.rb
origen-0.7.24 lib/origen/core_ext/object.rb
origen-0.7.23 lib/origen/core_ext/object.rb
origen-0.7.22 lib/origen/core_ext/object.rb
origen-0.7.21 lib/origen/core_ext/object.rb
origen-0.7.20 lib/origen/core_ext/object.rb
origen-0.7.19 lib/origen/core_ext/object.rb
origen-0.7.18 lib/origen/core_ext/object.rb
origen-0.7.17 lib/origen/core_ext/object.rb
origen-0.7.16 lib/origen/core_ext/object.rb
origen-0.7.15 lib/origen/core_ext/object.rb
origen-0.7.14 lib/origen/core_ext/object.rb
origen-0.7.13 lib/origen/core_ext/object.rb
origen-0.7.12 lib/origen/core_ext/object.rb