{"record":{"id":"31c5e16ee81cb0fd","repo":"RubyMoney/money","slug":"money-supports-only-zero-numerics","errorCode":null,"errorMessage":"Money#== supports only zero numerics","messagePattern":"Money#== supports only zero numerics","errorType":"exception","errorClass":"ArgumentError","httpStatus":null,"severity":"error","filePath":"lib/money/money/arithmetic.rb","lineNumber":87,"sourceCode":"        return other.is_a?(CoercedNumeric) ? 0 <=> fractional : fractional <=> 0\n      end\n\n      # Always allow comparison with zero\n      if zero? || other.zero?\n        return fractional <=> other.fractional\n      end\n\n      other = other.exchange_to(currency)\n      fractional <=> other.fractional\n    rescue Money::Bank::UnknownRate\n      nil\n    end\n\n    # Uses Comparable's implementation but raises ArgumentError if non-zero\n    # numeric value is given.\n    def ==(other)\n      if other.is_a?(Numeric) && !other.zero?\n        raise ArgumentError, \"Money#== supports only zero numerics\"\n      end\n\n      super\n    end\n\n    # Test if the amount is positive. Returns +true+ if the money amount is\n    # greater than 0, +false+ otherwise.\n    #\n    # @return [Boolean]\n    #\n    # @example\n    #   Money.new(1).positive?  #=> true\n    #   Money.new(0).positive?  #=> false\n    #   Money.new(-1).positive? #=> false\n    def positive?\n      fractional > 0\n    end\n","sourceCodeStart":69,"sourceCodeEnd":105,"githubUrl":"https://github.com/RubyMoney/money/blob/26e2829c34f165847040a5a40d4d2daa5eb72927/lib/money/money/arithmetic.rb#L69-L105","documentation":"Error \"Money#== supports only zero numerics\" thrown in RubyMoney/money.","triggerScenarios":"Thrown at lib/money/money/arithmetic.rb:87 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"26e2829c34f165847040a5a40d4d2daa5eb72927","analyzedAt":"2026-08-23T17:41:07.306Z","schemaVersion":2},"datasetVersion":"2026-08-23T21:17:23.414Z"}