class C end var = \"I am a local var outside\" C.class_eval do def self.a_class_method puts var end end
I know, this is not correct, beca
C.instance_eval do def class_method "This is class method" end end
instance_eval: defines singleton methods on the object (which results in class methods when it's called on class object).
class_eval: defines regular instance methods