def stringify
      if GenerateResult.wanted_attributes(event).include?(:defined_class)
        self.defined_class = defined_class.to_s
      end
      if GenerateResult.wanted_attributes(event).include?(:return_value)
        if return_value.nil? or return_value.is_a? Symbol or
          # ActiveRecord::ConnectionAdapters::Column override method ==
          (return_value.is_a? String and return_value == '')
          self.return_value = return_value.inspect
        else
          self.return_value = return_value.to_s
        end
      end
      self.event = event.to_s
      self.method_id = method_id.to_s
      self
    end
def stringify
      if GenerateResult.wanted_attributes(event).include?(:defined_class)
        self.defined_class = defined_class.to_s
      end
      if GenerateResult.wanted_attributes(event).include?(:return_value)
        if return_value.nil? or return_value.is_a? Symbol or
          # ActiveRecord::ConnectionAdapters::Column override method ==
          (return_value.is_a? String and return_value == '')
          self.return_value = return_value.inspect
        else
          self.return_value = return_value.to_s
        end
      end
      self.event = event.to_s
      self.method_id = method_id.to_s
      self
    end
todo: this is a mutable method
 not a good solution.
 we should use it on the return hash of method to_hash