diff options
author | Jesse Wolfe <jes5199@gmail.com> | 2010-08-17 12:02:05 -0700 |
---|---|---|
committer | Jesse Wolfe <jes5199@gmail.com> | 2010-08-17 12:25:37 -0700 |
commit | 16f701edd89a320ad73b5468d883dfb017fe6e96 (patch) | |
tree | 0063bdd34139f0ba09be638f8eabf4bf0e596008 /lib/puppet/util | |
parent | 3c090de39897d85a5d5be20254efcddea14ad8ad (diff) | |
parent | 4da88fb4cd57871f16649d50572240ac3f7420f0 (diff) | |
download | puppet-16f701edd89a320ad73b5468d883dfb017fe6e96.tar.gz puppet-16f701edd89a320ad73b5468d883dfb017fe6e96.tar.xz puppet-16f701edd89a320ad73b5468d883dfb017fe6e96.zip |
Merge remote branch 'paul/4472-4483-4496-4521-4522'
a.k.a. "make_taller_trees"
Diffstat (limited to 'lib/puppet/util')
-rw-r--r-- | lib/puppet/util/rdoc/parser.rb | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/puppet/util/rdoc/parser.rb b/lib/puppet/util/rdoc/parser.rb index 63df38ab9..30da607d9 100644 --- a/lib/puppet/util/rdoc/parser.rb +++ b/lib/puppet/util/rdoc/parser.rb @@ -17,7 +17,7 @@ class Parser SITE = "__site__" - attr_accessor :ast, :input_file_name, :top_level + attr_accessor :input_file_name, :top_level # parser registration into RDoc parse_files_matching(/\.(rb|pp)$/) @@ -36,8 +36,12 @@ class Parser Puppet.info "rdoc: scanning #{@input_file_name}" if @input_file_name =~ /\.pp$/ @parser = Puppet::Parser::Parser.new(Puppet[:environment]) + environment = @parser.environment @parser.file = @input_file_name - @ast = @parser.parse + @known_resource_types = environment.known_resource_types + @parser.parse.instantiate('').each do |type| + @known_resource_types.add type + end end scan_top_level(@top_level) @top_level @@ -334,7 +338,7 @@ class Parser # that contains the documentation def parse_elements(container) Puppet.debug "rdoc: scanning manifest" - @ast.hostclasses.values.sort { |a,b| a.name <=> b.name }.each do |klass| + @known_resource_types.hostclasses.values.sort { |a,b| a.name <=> b.name }.each do |klass| name = klass.name if klass.file == @input_file_name unless name.empty? @@ -347,13 +351,13 @@ class Parser end end - @ast.definitions.each do |name, define| + @known_resource_types.definitions.each do |name, define| if define.file == @input_file_name document_define(name,define,container) end end - @ast.nodes.each do |name, node| + @known_resource_types.nodes.each do |name, node| if node.file == @input_file_name document_node(name.to_s,node,container) end |