    # File lib/active_record/validations.rb, line 160
        def add(error_or_attr, message = nil, options = {})
          error, attribute = error_or_attr.is_a?(Error) ? [error_or_attr, error_or_attr.attribute] : [nil, error_or_attr]
          options[:message] = options.delete(:default) if options.has_key?(:default)

          @errors[attribute.to_s] ||= []
          @errors[attribute.to_s] << (error || Error.new(@base, attribute, message, options))
        end