class Mirrors::Mirror
The basic mirror
Public Class Methods
new(obj)
click to toggle source
# File lib/mirrors/mirror.rb, line 4 def initialize(obj) @subject = obj end
Public Instance Methods
mirrors?(other)
click to toggle source
The equivalent to #==/#eql? for comparison of mirrors against objects
# File lib/mirrors/mirror.rb, line 22 def mirrors?(other) @subject == other end
name()
click to toggle source
A generic representation of the object under observation.
# File lib/mirrors/mirror.rb, line 13 def name if @subject.is_a?(String) || @subject.is_a?(Symbol) @subject else @subject.inspect end end
reflectee()
click to toggle source
Accessor to the reflected object
# File lib/mirrors/mirror.rb, line 27 def reflectee @subject end
subject_id()
click to toggle source
# File lib/mirrors/mirror.rb, line 8 def subject_id @subject.__id__.to_s end
Private Instance Methods
mirrors(list)
click to toggle source
# File lib/mirrors/mirror.rb, line 33 def mirrors(list) list.collect { |e| Mirrors.reflect(e) } end