Suppose that:
class C; end
c = C.new
sing = (class << c; self; end)
If a method is called with C and sing, but I don’t know which is first
and
which is second in the parameter list, how do I tell them apart?
Thanks,
dean
Suppose that:
class C; end
c = C.new
sing = (class << c; self; end)
If a method is called with C and sing, but I don’t know which is first
and
which is second in the parameter list, how do I tell them apart?
Thanks,
dean
I just figured out a way, if I also have the instance “c”.
c.instance_of?© # => true
c.instance_of?(sing) # => false
Also works for kind_of? and is_a?
Thanks, Dean! 
“Dean W.” [email protected] writes:
Suppose that:
class C; end
c = C.new
sing = (class << c; self; end)If a method is called with C and sing, but I don’t know which is first and
which is second in the parameter list, how do I tell them apart?
C.name ==> “C”
sing.name ==> “”
YS
Thanks.
Correction: only instance_of? works. is_a? and kind_a? both return true
for
“C” and “sing”.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs