J
Josh Cheek
[Note: parts of this message were removed to make it a legal post.]
Trying to dynamically set a constant, but I seem to either be defining it in
the wrong place, or looking for it in the wrong place.
module ClassMaker
def self.make_class( classname , default )
theclass = Class.new do
extend ClassMethods
const_set EFAULT , default
end
Object.const_set classname , theclass
end
module ClassMethods
def reset
@value = DEFAULT
end
end
end
ClassMaker.make_class 'MyClass' , :my_default
begin
MyClass.reset
rescue => e
e # => #<NameError: uninitialized constant
ClassMaker::ClassMethods:EFAULT>
end
Trying to dynamically set a constant, but I seem to either be defining it in
the wrong place, or looking for it in the wrong place.
module ClassMaker
def self.make_class( classname , default )
theclass = Class.new do
extend ClassMethods
const_set EFAULT , default
end
Object.const_set classname , theclass
end
module ClassMethods
def reset
@value = DEFAULT
end
end
end
ClassMaker.make_class 'MyClass' , :my_default
begin
MyClass.reset
rescue => e
e # => #<NameError: uninitialized constant
ClassMaker::ClassMethods:EFAULT>
end