# File lib/puppet/property.rb, line 78
78:   def call_valuemethod(name, value)
79:     if method = self.class.value_option(name, :method) and self.respond_to?(method)
80:       begin
81:         event = self.send(method)
82:       rescue Puppet::Error
83:         raise
84:       rescue => detail
85:         puts detail.backtrace if Puppet[:trace]
86:         error = Puppet::Error.new("Could not set '#{value} on #{self.class.name}: #{detail}", @resource.line, @resource.file)
87:         error.set_backtrace detail.backtrace
88:         raise error
89:       end
90:     elsif block = self.class.value_option(name, :block)
91:       # FIXME It'd be better here to define a method, so that
92:       # the blocks could return values.
93:       self.instance_eval(&block)
94:     else
95:       devfail "Could not find method for value '#{name}'"
96:     end
97:   end