# File lib/puppet/type.rb, line 380
380:   def [](name)
381:     name = attr_alias(name)
382: 
383:     fail("Invalid parameter #{name}(#{name.inspect})") unless self.class.validattr?(name)
384: 
385:     if name == :name
386:       name = name_var
387:     end
388: 
389:     if obj = @parameters[name]
390:       # Note that if this is a property, then the value is the "should" value,
391:       # not the current value.
392:       obj.value
393:     else
394:       return nil
395:     end
396:   end