# File lib/puppet/type.rb, line 109
109:   def self.ensurable?
110:     # If the class has all three of these methods defined, then it's
111:     # ensurable.
112:     ens = [:exists?, :create, :destroy].inject { |set, method|
113:       set &&= self.public_method_defined?(method)
114:     }
115: 
116:     ens
117:   end