# File lib/hiera/backend.rb, line 83 def parse_string(data, scope, extra_data={}) return nil unless data tdata = data.clone if tdata.is_a?(String) while tdata =~ /%\{(.+?)\}/ var = $1 val = scope[var] || extra_data[var] || "" # Puppet can return this for unknown scope vars val = "" if val == :undefined tdata.gsub!(/%\{#{var}\}/, val) end end return tdata end