operator << method

  1. @override
u2 operator <<(
  1. dynamic other
)
override

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.

Returns u2

Implementation

@override
u2 operator <<(dynamic other) {
  if (other is integer) {
    return u2(value << other.value);
  } else if (other is int) {
    return u2(value << other);
  } else {
    throw Exception('Invalid type for operand: ${other.runtimeType}');
  }
}