While.Parsing.Parser.BitShift C# (CSharp) Method

BitShift() public method

public BitShift ( Expression &exp ) : void
exp Expression
return void
        void BitShift(out Expression exp)
        {
            Expression second;
            PlusMinus(out exp);
            while (la.kind == 38 || la.kind == 39) {
            if (la.kind == 38) {
                Get();
            } else {
                Get();
            }
            Token tok = t;
            PlusMinus(out second);
            if (!ExpectInt(exp, tok, false)) { return; }
            if (!ExpectInt(second, tok, true)) { return; }
            if (tok.val == "<<") {
                exp = new ShiftLeft((TypedExpression<int>)exp, (TypedExpression<int>)second);
            } else if (tok.val == ">>") {
                exp = new ShiftRight((TypedExpression<int>)exp, (TypedExpression<int>)second);
            }

            }
        }