# File lib/puppet/parser/scope.rb, line 196
196:     def lookupvar(name, usestring = true)
197:         table = ephemeral?(name) ? @ephemeral : @symtable
198:         # If the variable is qualified, then find the specified scope and look the variable up there instead.
199:         if name =~ /::/
200:             return lookup_qualified_var(name, usestring)
201:         end
202:         # We can't use "if table[name]" here because the value might be false
203:         if table.include?(name)
204:             if usestring and table[name] == :undef
205:                 return ""
206:             else
207:                 return table[name]
208:             end
209:         elsif self.parent
210:             return parent.lookupvar(name, usestring)
211:         elsif usestring
212:             return ""
213:         else
214:             return :undefined
215:         end
216:     end