diff options
Diffstat (limited to 'lib/rdoc/normal_module.rb')
-rw-r--r-- | lib/rdoc/normal_module.rb | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/lib/rdoc/normal_module.rb b/lib/rdoc/normal_module.rb new file mode 100644 index 0000000000..92abe6b440 --- /dev/null +++ b/lib/rdoc/normal_module.rb @@ -0,0 +1,64 @@ +require 'rdoc/class_module' + +## +# A normal module, like NormalClass + +class RDoc::NormalModule < RDoc::ClassModule + + ## + # Included NormalModules + + alias ancestors includes + + def inspect # :nodoc: + "#<%s:0x%x module %s includes: %p attributes: %p methods: %p aliases: %p>" % [ + self.class, object_id, + full_name, @includes, @attributes, @method_list, @aliases + ] + end + + ## + # This is a module, returns true + + def module? + true + end + + def pretty_print q # :nodoc: + q.group 2, "[module #{full_name}: ", "]" do + q.breakable + q.text "includes:" + q.breakable + q.seplist @includes do |inc| q.pp inc end + q.breakable + + q.text "attributes:" + q.breakable + q.seplist @attributes do |inc| q.pp inc end + q.breakable + + q.text "methods:" + q.breakable + q.seplist @method_list do |inc| q.pp inc end + q.breakable + + q.text "aliases:" + q.breakable + q.seplist @aliases do |inc| q.pp inc end + q.breakable + + q.text "comment:" + q.breakable + q.pp comment + end + end + + ## + # Modules don't have one, raises NoMethodError + + def superclass + raise NoMethodError, "#{full_name} is a module" + end + +end + |