Package dev.frostlake.functions
Class IncomparableArgumentsException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
dev.frostlake.functions.IncomparableArgumentsException
- All Implemented Interfaces:
Serializable
Raised by a function that ORDERS its arguments when two of them belong to families it cannot bring
together —
GREATEST(<binary>, <string>) and its kin.
It carries no user-facing sentence on purpose. The refusal the account gives names the operand and both DECLARED types ("Can not convert parameter 'T.S' of type [VARCHAR(10)] into expected type [BINARY(4)]"), and a function that sees only VALUES cannot spell that: the qualified column name lives in the expression tree. So this type is a SIGNAL — the evaluator catches it and re-asks the static type channel, which has the tree and produces the account's own wording. What must never happen is the alternative it replaced: a raw ClassCastException from a Comparable pairing, quoting Java class names at whoever ran the query.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
IncomparableArgumentsException
-