# File lib/puppet/util/settings/setting.rb, line 33
33:     def initialize(args = {})
34:         unless @settings = args.delete(:settings)
35:             raise ArgumentError.new("You must refer to a settings object")
36:         end
37: 
38:         args.each do |param, value|
39:             method = param.to_s + "="
40:             unless self.respond_to? method
41:                 raise ArgumentError, "%s does not accept %s" % [self.class, param]
42:             end
43: 
44:             self.send(method, value)
45:         end
46: 
47:         unless self.desc
48:             raise ArgumentError, "You must provide a description for the %s config option" % self.name
49:         end
50:     end