# File lib/puppet/util/provider_features.rb, line 52 52: def feature(name, docs, hash = {}) 53: @features ||= {} 54: raise(Puppet::DevError, "Feature #{name} is already defined") if @features.include?(name) 55: begin 56: obj = ProviderFeature.new(name, docs, hash) 57: @features[obj.name] = obj 58: rescue ArgumentError => detail 59: error = ArgumentError.new( 60: "Could not create feature #{name}: #{detail}" 61: ) 62: error.set_backtrace(detail.backtrace) 63: raise error 64: end 65: end