summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser/ast/node.rb
diff options
context:
space:
mode:
authorBrice Figureau <brice-puppet@daysofwonder.com>2008-11-15 13:10:55 +0100
committerJames Turnbull <james@lovedthanlost.net>2008-11-17 21:05:36 +1100
commit064fb006a350e9555abe766c5cb4aeb803fd623a (patch)
treee9dd550404cb84a4a9c11d08560c9408bbba6f40 /lib/puppet/parser/ast/node.rb
parent724a6f672308ab6f52d738caf20c5994e6225071 (diff)
downloadpuppet-064fb006a350e9555abe766c5cb4aeb803fd623a.tar.gz
puppet-064fb006a350e9555abe766c5cb4aeb803fd623a.tar.xz
puppet-064fb006a350e9555abe766c5cb4aeb803fd623a.zip
Add a doc attribute to AST nodes and fill it with the last seen comments
The lexer maintains a stack of last seen comments. On blank lines the lexer flush the comments. On each opening brace the lexer enters a new stack level. On each block AST nodes, the stack is popped. Each AST nodes has a doc property that is filled with the last seen comments on node creation (in fact only on important node creation representing statements). Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Diffstat (limited to 'lib/puppet/parser/ast/node.rb')
-rw-r--r--lib/puppet/parser/ast/node.rb3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/puppet/parser/ast/node.rb b/lib/puppet/parser/ast/node.rb
index 2bf6c1882..442518f44 100644
--- a/lib/puppet/parser/ast/node.rb
+++ b/lib/puppet/parser/ast/node.rb
@@ -3,6 +3,9 @@ require 'puppet/parser/ast/hostclass'
# The specific code associated with a host. Nodes are annoyingly unlike
# other objects. That's just the way it is, at least for now.
class Puppet::Parser::AST::Node < Puppet::Parser::AST::HostClass
+
+ associates_doc
+
@name = :node
def initialize(options)