# File lib/puppet/parser/lexer.rb, line 543
543:   def tokenize_interpolated_string(token_type,preamble='')
544:     value,terminator = slurpstring('"$')
545:     token_queue << [TOKENS[token_type[terminator]],preamble+value]
546:     if terminator != '$' or @scanner.scan(/\{/)
547:       token_queue.shift 
548:     elsif var_name = @scanner.scan(%r{(\w*::)*\w+|[0-9]})
549:       token_queue << [TOKENS[:VARIABLE],var_name]
550:       tokenize_interpolated_string(DQ_continuation_token_types)
551:     else
552:       tokenize_interpolated_string(token_type,token_queue.pop.last + terminator)
553:     end
554:   end