Wyrażenia bitowe
Operatory bitowe są wyrażane jako trzy znaki inne niż litery. Oprócz wersji bitowych AND (&&&
), OR (|||
) i NOT (~~~
), istnieje również bitowy XOR (^^^
). Oczekują one, że operandy typu Int
lub BigInt
, a w przypadku operatorów binarnych typ obu operandów musi być zgodny. Typ całego wyrażenia jest równy typowi operandów.
Ponadto istnieją operatory przesunięcia w lewo i prawo ( odpowiednio<<<
i >>>
), mnożenie lub dzielenie danego wyrażenia po lewej stronie (lhs) przez moce dwóch. Wyrażenie lhs <<< 3
przesuwa reprezentację bitów lhs
przez trzy, co oznacza, że lhs
jest mnożona przez 2^3
, pod warunkiem że nadal mieści się w prawidłowym zakresie dla typu danych lhs
. Lhs może być typu Int
lub BigInt
. Wyrażenie po prawej stronie zawsze musi mieć typ Int
. Wynikowe wyrażenie jest tego samego typu co operand lhs.