summaryrefslogtreecommitdiff
path: root/lib/rdoc/top_level.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-27 08:54:03 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-27 08:54:03 +0000
commit6d1266a879a94a6f76106e1bbdfa3576b6612a69 (patch)
tree5c88a98d9e588861138e63be7d45353627dcab43 /lib/rdoc/top_level.rb
parent7de9e2dfdeefeefe6c3d4ff9ebafa8c947eca33f (diff)
* lib/rdoc/*: Added --root option for building documentation outside
the source directory. * test/rdoc/*: ditto * common.mk (rdoc): Added --root to rdoc rule git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rdoc/top_level.rb')
-rw-r--r--lib/rdoc/top_level.rb26
1 files changed, 14 insertions, 12 deletions
diff --git a/lib/rdoc/top_level.rb b/lib/rdoc/top_level.rb
index 9cf38539de..f4952fb6ff 100644
--- a/lib/rdoc/top_level.rb
+++ b/lib/rdoc/top_level.rb
@@ -35,14 +35,16 @@ class RDoc::TopLevel < RDoc::Context
attr_accessor :parser
##
- # Creates a new TopLevel for +file_name+
+ # Creates a new TopLevel for the file at +absolute_name+. If documentation
+ # is being generated outside the source dir +relative_name+ is relative to
+ # the source directory.
- def initialize file_name
+ def initialize absolute_name, relative_name = absolute_name
super()
@name = nil
- @relative_name = file_name
- @absolute_name = file_name
- @file_stat = File.stat(file_name) rescue nil # HACK for testing
+ @absolute_name = absolute_name
+ @relative_name = relative_name
+ @file_stat = File.stat(absolute_name) rescue nil # HACK for testing
@diagram = nil
@parser = nil
@@ -50,10 +52,10 @@ class RDoc::TopLevel < RDoc::Context
end
##
- # An RDoc::TopLevel is equal to another with the same absolute_name
+ # An RDoc::TopLevel is equal to another with the same relative_name
def == other
- self.class === other and @absolute_name == other.absolute_name
+ self.class === other and @relative_name == other.relative_name
end
alias eql? ==
@@ -106,7 +108,7 @@ class RDoc::TopLevel < RDoc::Context
# Base name of this file
def base_name
- File.basename @absolute_name
+ File.basename @relative_name
end
alias name base_name
@@ -152,10 +154,10 @@ class RDoc::TopLevel < RDoc::Context
##
# An RDoc::TopLevel has the same hash as another with the same
- # absolute_name
+ # relative_name
def hash
- @absolute_name.hash
+ @relative_name.hash
end
##
@@ -188,7 +190,7 @@ class RDoc::TopLevel < RDoc::Context
def marshal_dump
[
MARSHAL_VERSION,
- @absolute_name,
+ @relative_name,
@parser,
parse(@comment),
]
@@ -223,7 +225,7 @@ class RDoc::TopLevel < RDoc::Context
# Base name of this file without the extension
def page_name
- basename = File.basename @absolute_name
+ basename = File.basename @relative_name
basename =~ /\.[^.]*$/
$` || basename