public override AstNode VisitShift_expression([NotNull] GLSL_ES300Parser.Shift_expressionContext context) { if (context.Left() != null || context.Right() != null) { var result = new ExpressionBinary(); result.Left = (Expression)this.Visit(context.shift_expression()); result.Right = (Expression)this.Visit(context.additive_expression()); result.Operator = context.Left() != null ? Operator.Left : Operator.Right; return(result); } return(this.Visit(context.additive_expression())); }
/// <summary> /// Visit a parse tree produced by <see cref="GLSL_ES300Parser.shift_expression"/>. /// <para> /// The default implementation returns the result of calling <see cref="AbstractParseTreeVisitor{Result}.VisitChildren(IRuleNode)"/> /// on <paramref name="context"/>. /// </para> /// </summary> /// <param name="context">The parse tree.</param> /// <return>The visitor result.</return> public virtual Result VisitShift_expression([NotNull] GLSL_ES300Parser.Shift_expressionContext context) { return(VisitChildren(context)); }