From 46580b51477355fece514573c88cb67030f4a502 Mon Sep 17 00:00:00 2001 From: drbrain Date: Thu, 1 Apr 2010 07:45:16 +0000 Subject: Import RDoc 2.5 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rdoc/include.rb | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 lib/rdoc/include.rb (limited to 'lib/rdoc/include.rb') diff --git a/lib/rdoc/include.rb b/lib/rdoc/include.rb new file mode 100644 index 0000000000..11a9bdc7ef --- /dev/null +++ b/lib/rdoc/include.rb @@ -0,0 +1,61 @@ +require 'rdoc/code_object' + +## +# A Module include in a class with \#include + +class RDoc::Include < RDoc::CodeObject + + ## + # Name of included module + + attr_accessor :name + + ## + # Creates a new Include for +name+ with +comment+ + + def initialize(name, comment) + super() + @name = name + self.comment = comment + end + + ## + # Includes are sorted by name + + def <=> other + return unless self.class === other + + name <=> other.name + end + + def == other # :nodoc: + self.class == other.class and + self.name == other.name + end + + ## + # Full name based on #module + + def full_name + m = self.module + RDoc::ClassModule === m ? m.full_name : @name + end + + def inspect # :nodoc: + "#<%s:0x%x %s.include %s>" % [ + self.class, + object_id, + parent_name, @name, + ] + end + + ## + # Attempts to locate the included module object. Returns the name if not + # known. + + def module + RDoc::TopLevel.find_module_named(@name) || @name + end + +end + -- cgit v1.2.3