diff options
Diffstat (limited to 'lib/puppet/parser/ast')
-rw-r--r-- | lib/puppet/parser/ast/branch.rb | 2 | ||||
-rw-r--r-- | lib/puppet/parser/ast/caseopt.rb | 4 | ||||
-rw-r--r-- | lib/puppet/parser/ast/collection.rb | 10 | ||||
-rw-r--r-- | lib/puppet/parser/ast/function.rb | 6 | ||||
-rw-r--r-- | lib/puppet/parser/ast/ifstatement.rb | 2 | ||||
-rw-r--r-- | lib/puppet/parser/ast/resource.rb | 10 | ||||
-rw-r--r-- | lib/puppet/parser/ast/resource_override.rb | 5 | ||||
-rw-r--r-- | lib/puppet/parser/ast/resourceparam.rb | 5 |
8 files changed, 30 insertions, 14 deletions
diff --git a/lib/puppet/parser/ast/branch.rb b/lib/puppet/parser/ast/branch.rb index dcd09baa3..0c481ffe6 100644 --- a/lib/puppet/parser/ast/branch.rb +++ b/lib/puppet/parser/ast/branch.rb @@ -23,7 +23,7 @@ class Puppet::Parser::AST super(arghash) # Create the hash, if it was not set at initialization time. - unless defined? @children + unless defined?(@children) @children = [] end diff --git a/lib/puppet/parser/ast/caseopt.rb b/lib/puppet/parser/ast/caseopt.rb index 47f32e2ee..51a82c5c0 100644 --- a/lib/puppet/parser/ast/caseopt.rb +++ b/lib/puppet/parser/ast/caseopt.rb @@ -16,7 +16,7 @@ class Puppet::Parser::AST # Are we the default option? def default? # Cache the @default value. - if defined? @default + if defined?(@default) return @default end @@ -33,7 +33,7 @@ class Puppet::Parser::AST end end - unless defined? @default + unless defined?(@default) @default = false end diff --git a/lib/puppet/parser/ast/collection.rb b/lib/puppet/parser/ast/collection.rb index f3690c146..44f3b330c 100644 --- a/lib/puppet/parser/ast/collection.rb +++ b/lib/puppet/parser/ast/collection.rb @@ -30,11 +30,14 @@ class Collection < AST::Branch param.safeevaluate(scope) end - newcoll.add_override( + + newcoll.add_override( + :parameters => params, :file => @file, :line => @line, :source => scope.source, + :scope => scope ) end @@ -47,9 +50,12 @@ class Collection < AST::Branch if override.is_a?(AST::ASTArray) @override = override else - @override = AST::ASTArray.new( + + @override = AST::ASTArray.new( + :line => override.line, :file => override.file, + :children => [override] ) end diff --git a/lib/puppet/parser/ast/function.rb b/lib/puppet/parser/ast/function.rb index 0984ed8ce..98204b14a 100644 --- a/lib/puppet/parser/ast/function.rb +++ b/lib/puppet/parser/ast/function.rb @@ -21,14 +21,12 @@ class Puppet::Parser::AST case @ftype when :rvalue unless Puppet::Parser::Functions.rvalue?(@name) - raise Puppet::ParseError, "Function '%s' does not return a value" % - @name + raise Puppet::ParseError, "Function '%s' does not return a value" % @name end when :statement if Puppet::Parser::Functions.rvalue?(@name) raise Puppet::ParseError, - "Function '%s' must be the value of a statement" % - @name + "Function '%s' must be the value of a statement" % @name end else raise Puppet::DevError, "Invalid function type %s" % @ftype.inspect diff --git a/lib/puppet/parser/ast/ifstatement.rb b/lib/puppet/parser/ast/ifstatement.rb index d84445bbd..36da50c7a 100644 --- a/lib/puppet/parser/ast/ifstatement.rb +++ b/lib/puppet/parser/ast/ifstatement.rb @@ -24,7 +24,7 @@ class Puppet::Parser::AST if Puppet::Parser::Scope.true?(value) return @statements.safeevaluate(scope) else - if defined? @else + if defined?(@else) return @else.safeevaluate(scope) else return nil diff --git a/lib/puppet/parser/ast/resource.rb b/lib/puppet/parser/ast/resource.rb index 5488724c8..5aa11129a 100644 --- a/lib/puppet/parser/ast/resource.rb +++ b/lib/puppet/parser/ast/resource.rb @@ -37,7 +37,9 @@ class Resource < AST::ResourceReference # many times. resource_titles.flatten.collect { |resource_title| exceptwrap :type => Puppet::ParseError do - resource = Puppet::Parser::Resource.new(type, resource_title, + + resource = Puppet::Parser::Resource.new( + type, resource_title, :parameters => paramobjects, :file => self.file, :line => self.line, @@ -45,6 +47,7 @@ class Resource < AST::ResourceReference :virtual => virt, :source => scope.source, :scope => scope, + :strict => true ) @@ -62,9 +65,12 @@ class Resource < AST::ResourceReference if params.is_a?(AST::ASTArray) @parameters = params else - @parameters = AST::ASTArray.new( + + @parameters = AST::ASTArray.new( + :line => params.line, :file => params.file, + :children => [params] ) end diff --git a/lib/puppet/parser/ast/resource_override.rb b/lib/puppet/parser/ast/resource_override.rb index 93ddf4dbe..f667ed23a 100644 --- a/lib/puppet/parser/ast/resource_override.rb +++ b/lib/puppet/parser/ast/resource_override.rb @@ -36,11 +36,14 @@ class Puppet::Parser::AST resource = [resource] unless resource.is_a?(Array) resource = resource.collect do |r| - res = Puppet::Parser::Resource.new(r.type, r.title, + + res = Puppet::Parser::Resource.new( + r.type, r.title, :parameters => params, :file => file, :line => line, :source => scope.source, + :scope => scope ) diff --git a/lib/puppet/parser/ast/resourceparam.rb b/lib/puppet/parser/ast/resourceparam.rb index e6d9df17f..bf0a2258b 100644 --- a/lib/puppet/parser/ast/resourceparam.rb +++ b/lib/puppet/parser/ast/resourceparam.rb @@ -11,9 +11,12 @@ class Puppet::Parser::AST # Return the parameter and the value. def evaluate(scope) - return Puppet::Parser::Resource::Param.new( + + return Puppet::Parser::Resource::Param.new( + :name => @param, :value => @value.safeevaluate(scope), + :source => scope.source, :line => self.line, :file => self.file, :add => self.add ) |