Scala primitive operations are represented as methods in Any and
AnyVal subclasses.
Scala primitive operations are represented as methods in Any and
AnyVal subclasses. Here we demultiplex them by providing a mapping
from their symbols to integers. Different methods exist for
different value types, but with the same meaning (like plus, minus,
etc.). They will all be mapped to the same int.
Note: The three equal methods have the following semantics:
"==" checks for null, and if non-null, calls
java.lang.Object.equals(class: Any; modifier: final). Primitive: EQ
"eq" usual reference comparison
(class: AnyRef; modifier: final). Primitive: ID
Scala primitive operations are represented as methods in
Any
andAnyVal
subclasses. Here we demultiplex them by providing a mapping from their symbols to integers. Different methods exist for different value types, but with the same meaning (like plus, minus, etc.). They will all be mapped to the same int.Note: The three equal methods have the following semantics:
"=="
checks fornull
, and if non-null, callsjava.lang.Object.equals
(class: Any; modifier: final)
. Primitive:EQ
"eq"
usual reference comparison(class: AnyRef; modifier: final)
. Primitive:ID
"equals"
user-defined equality (Java semantics)(class: Object; modifier: none)
. Primitive:EQUALS
Inspired from the
scalac
compiler.