class Object
Reopen the core Object
class to add {#identify} to all objects.
Public Instance Methods
identify(*args)
click to toggle source
Instance method for constructing a self-identifying string for any given object or list of objects.
@overload identify(*args)
@param args [*] (optional) a list of arguments to identify for this object or for each object in this collection
@overload identify(*args, options)
@param args [*] (optional) (default: :id) a list of arguments to identify for this object @param [Hash] options the options for building a customized self-identifier @option options [String, nil] :klass object class name override @option options [Integer] :limit maximum number of objects to display from a collection
@return [String] a self-identifying string
@example
OpenStruct.new(a: 1, b: '2', c: :"3").identify(:a, :b, :c) # => "OpenStruct[a:1, b:\"2\", c::\"3\"]" 1.identify(:to_s) # => "Integer[to_s:\"1\"]" nil.identify # => "[no objects]" %w(1 2).identify(:to_i, :to_f) # => "String[to_i:1, to_f:1.0], String[to_i:2, to_f:2.0]" (1..10).to_a.identify(:to_f, limit: 2) # => "Integer[to_f:1.0], Integer[to_f:2.0], ... (8 more)"
# File lib/core_ext/object.rb, line 42 def identify(*args) ObjectIdentifier::Identifier.identify(self, *args) end
inspect_lit()
click to toggle source
Standard inspect for any object that doesn't override this method. This method is meant to make an object's type inherently obvious inspected.
@return [String] a String-literal representation of this object
# File lib/core_ext/object.rb, line 9 def inspect_lit inspect end