I have certain classes that are implemented as decorators in my Rails app which is on Ruby 1.8.7 . I keep getting the warning - warning: already initialized constant ABC
. Here ABC is the name of the constant.
To solve this, I'm using the const_defined? method as suggested in this answer .
My doubt is - is const_defined?
the right way to check if a class constant is already defined in ruby ? I clearly see that it can be used to check for a module constant.
I was able to see that the defined?
method can also be used as mentioned in this answer. I tried to lookup the documentation of defined?
, but I don't see a link to its documentation based on my search thus far.
I'm not sure which to choose among the two as I can't see a clear difference between the two at this point.
Could one please suggest which is best to use in this situation and why?.