summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser/lexer.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/parser/lexer.rb')
-rw-r--r--lib/puppet/parser/lexer.rb15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/puppet/parser/lexer.rb b/lib/puppet/parser/lexer.rb
index 095e2d432..1244e111a 100644
--- a/lib/puppet/parser/lexer.rb
+++ b/lib/puppet/parser/lexer.rb
@@ -177,13 +177,20 @@ module Puppet
when :RETURN then
@line += 1
@scanner.skip(@skip)
+ when :SQUOTE then
+ #Puppet.debug("searching '%s' after '%s'" % [self.rest,value])
+ value = self.slurpstring(value)
+ yield [:SQTEXT,value]
+ @last = value
+ #stoken = :DQTEXT
+ #Puppet.debug("got string '%s' => '%s'" % [:DQTEXT,value])
when :DQUOTE then
#Puppet.debug("searching '%s' after '%s'" % [self.rest,value])
value = self.slurpstring(value)
- yield [:QTEXT,value]
+ yield [:DQTEXT,value]
@last = value
- #stoken = :QTEXT
- #Puppet.debug("got string '%s' => '%s'" % [:QTEXT,value])
+ #stoken = :DQTEXT
+ #Puppet.debug("got string '%s' => '%s'" % [:DQTEXT,value])
else
yield [stoken,value]
@last = value
@@ -205,7 +212,7 @@ module Puppet
raise Puppet::LexError.new("Unclosed quote after '%s' in '%s'" %
[self.last,self.rest])
else
- str.sub!(/#{quote}$/,"")
+ str.sub!(/#{quote}\Z/,"")
str.gsub!(/\\#{quote}/,quote)
end