Boo.Lang.Compiler.Steps.ProcessMethodBodies.IsEnumOperation C# (CSharp) Method

IsEnumOperation() private method

private IsEnumOperation ( Boo.Lang.Compiler.Ast.BinaryExpression node ) : bool
node Boo.Lang.Compiler.Ast.BinaryExpression
return bool
        bool IsEnumOperation(BinaryExpression node)
        {
            switch (node.Operator)
            {
                case BinaryOperatorType.Addition:
                case BinaryOperatorType.Subtraction:
                case BinaryOperatorType.BitwiseAnd:
                case BinaryOperatorType.BitwiseOr:
                case BinaryOperatorType.ExclusiveOr:
                    IType lhs = GetExpressionType(node.Left);
                    IType rhs = GetExpressionType(node.Right);
                    if (lhs.IsEnum) return IsValidEnumOperand(lhs, rhs);
                    if (rhs.IsEnum) return IsValidEnumOperand(rhs, lhs);
                    break;
            }
            return false;
        }
ProcessMethodBodies