"D" == Daniel Berger <Daniel.Berger@qwest.com> writes:
> Why doesn't that work?
Because this is parse.y and eval.c which make work
class Bar::Baz
end
and not the call to rb_define_class()
With rb_define_class("Bar::Baz"), ruby has defined a class
"Bar::Baz" and
not a class Baz under Bar (what it look with Foo::Bar::Baz)
> The only way I could get it to work was to declare "Baz" under
"Bar". But is D> that really the same thing?
In your case probably.
What's the difference between these two?
module Foo
class Bar
end
class Bar::Baz
end
end
module Foo
class Bar
class Baz
end
end
end
Is there any difference? What are the potential pitfalls, if any?
You could hit issues with constant lookup, but from a code point
of view they should be the same.