# File lib/puppet/type.rb, line 186
186:     def self.newmetaparam(name, options = {}, &block)
187:         @@metaparams ||= []
188:         @@metaparamhash ||= {}
189:         name = symbolize(name)
190: 
191:         param = genclass(name,
192:             :parent => options[:parent] || Puppet::Parameter,
193:             :prefix => "MetaParam",
194:             :hash => @@metaparamhash,
195:             :array => @@metaparams,
196:             :attributes => options[:attributes],
197:             &block
198:         )
199: 
200:         # Grr.
201:         if options[:required_features]
202:             param.required_features = options[:required_features]
203:         end
204: 
205:         handle_param_options(name, options)
206: 
207:         param.metaparam = true
208: 
209:         return param
210:     end