I have a class with a constant defined for it. I then have a class method defined that accesses that class constant. This works fine. An example:
#! /usr/bin/
Its probably worth noting that you don't need to include modules into a metaclass.
class NonInstantiableClass
Const = "hello, world!"
class << self
include CommonMethods
end
end
Ruby has the extend
keyword that effectively adds the modules interface to a class, e.g.
class NonInstantiableClass
Const = "hello, world!"
extend CommonMethods
end
You still need to ensure you're referencing the right constant using self::Const
or const_get
, but extend
is the better way to add those methods to the class.