diff options
| author | Markus Roberts <Markus@reality.com> | 2010-10-21 20:39:33 -0700 |
|---|---|---|
| committer | Nick Lewis <nick@puppetlabs.com> | 2011-04-12 12:47:31 -0700 |
| commit | 1954bbfe175ae7f18316e57af43362eb4ed73553 (patch) | |
| tree | 77cdb4a0fed83f841d950abb9181b2e25952137c /lib/puppet | |
| parent | 31f8e660c8f4c0ec01f140322cf7c585144a0888 (diff) | |
| download | puppet-1954bbfe175ae7f18316e57af43362eb4ed73553.tar.gz puppet-1954bbfe175ae7f18316e57af43362eb4ed73553.tar.xz puppet-1954bbfe175ae7f18316e57af43362eb4ed73553.zip | |
Refactor on the road to #5027 -- remove unused Scope#strinterp
One of the uses of lookupvar was in the method Scope#strinterp; this method
is no longer used (string interpolation is now handled by the parser (for
the syntax) and AST nodes (for the semantics)) so this use of lookupvar can
be excised, along with a fair amount of surrounding code.
Diffstat (limited to 'lib/puppet')
| -rw-r--r-- | lib/puppet/parser/scope.rb | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/lib/puppet/parser/scope.rb b/lib/puppet/parser/scope.rb index df307915e..77032992c 100644 --- a/lib/puppet/parser/scope.rb +++ b/lib/puppet/parser/scope.rb @@ -343,65 +343,6 @@ class Puppet::Parser::Scope end end - # Return an interpolated string. - def strinterp(string, file = nil, line = nil) - # Most strings won't have variables in them. - ss = StringScanner.new(string) - out = "" - while not ss.eos? - if ss.scan(/^\$\{((\w*::)*\w+|[0-9]+)\}|^\$([0-9])|^\$((\w*::)*\w+)/) - # If it matches the backslash, then just retun the dollar sign. - if ss.matched == '\\$' - out << '$' - else # look the variable up - # make sure $0-$9 are lookupable only if ephemeral - var = ss[1] || ss[3] || ss[4] - if var and var =~ /^[0-9]+$/ and not ephemeral_include?(var) - next - end - out << undef_as('',lookupvar(var)).to_s - end - elsif ss.scan(/^\\(.)/) - # Puppet.debug("Got escape: pos:%d; m:%s" % [ss.pos, ss.matched]) - case ss[1] - when 'n' - out << "\n" - when 't' - out << "\t" - when 's' - out << " " - when '\\' - out << '\\' - when '$' - out << '$' - else - str = "Unrecognised escape sequence '#{ss.matched}'" - str += " in file #{file}" if file - str += " at line #{line}" if line - Puppet.warning str - out << ss.matched - end - elsif ss.scan(/^\$/) - out << '$' - elsif ss.scan(/^\\\n/) # an escaped carriage return - next - else - tmp = ss.scan(/[^\\$]+/) - # Puppet.debug("Got other: pos:%d; m:%s" % [ss.pos, tmp]) - unless tmp - error = Puppet::ParseError.new("Could not parse string #{string.inspect}") - {:file= => file, :line= => line}.each do |m,v| - error.send(m, v) if v - end - raise error - end - out << tmp - end - end - - out - end - # Return the tags associated with this scope. It's basically # just our parents' tags, plus our type. We don't cache this value # because our parent tags might change between calls. |
