diff options
Diffstat (limited to 'etc/token_class_hierarchy.rb')
-rw-r--r-- | etc/token_class_hierarchy.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/etc/token_class_hierarchy.rb b/etc/token_class_hierarchy.rb new file mode 100644 index 0000000..4dc3f1f --- /dev/null +++ b/etc/token_class_hierarchy.rb @@ -0,0 +1,22 @@ +class TokenClass + def self.const_missing name + const_set name, Class.new(self) + end + def self.method_missing name, &block + clas = const_missing name + if block + clas.instance_eval(&block) + end + end +end + +class Comment < TokenClass + Multiline + class Shebang < self + Foo + end +end + +p Comment::Blubb::Bla <= Comment::Blubb + +ObjectSpace.each_object(Class) { |o| p o if o < TokenClass }
\ No newline at end of file |