operator << method
Shift the bits of this integer to the left by shiftAmount
.
Shifting to the left makes the number larger, effectively multiplying
the number by pow(2, shiftIndex)
.
There is no limit on the size of the result. It may be relevant to limit intermediate values by using the "and" operator with a suitable mask.
It is an error if shiftAmount
is negative.
Example:
print((Obj(3) << Obj(1)).toRadixString(2)); // 0011 -> 0110
print((Obj(9) << Obj(2)).toRadixString(2)); // 1001 -> 100100
print((Obj(10) << Obj(3)).toRadixString(2)); // 1010 -> 1010000
Implementation
Obj<int> operator <<(Obj<int> shiftAmount) =>
(value << shiftAmount.value).obj;