void Assoc_UnaryExpression(out Node node) { DesignScript.Parser.Associative.UnaryExpressionNode an = new DesignScript.Parser.Associative.UnaryExpressionNode(); node = null; if (StartOf(15)) { Assoc_NegExpression(out an); } else if (StartOf(16)) { Assoc_BitUnaryExpression(out an); } else SynErr(98); node = an; }
void Assoc_BitUnaryExpression(out DesignScript.Parser.Associative.UnaryExpressionNode node) { DesignScript.Parser.Associative.UnaryExpressionNode unary = new DesignScript.Parser.Associative.UnaryExpressionNode(); DesignScript.Parser.Associative.IDEHelpNode IDEop = unary.op; Assoc_unaryop(out IDEop); Node exprNode = null; Assoc_Factor(out exprNode); unary.Expression = exprNode; unary.op = IDEop; node = unary; }
void Assoc_NegExpression(out DesignScript.Parser.Associative.UnaryExpressionNode node) { node = new Associative.UnaryExpressionNode() ; DesignScript.Parser.Associative.IDEHelpNode op = node.op; Node exprNode = null; Assoc_negop(out op); if (la.kind == 1 || la.kind == 9 || la.kind == 50) { Assoc_IdentifierList(out exprNode); } else if (la.kind == 9) { Get(); Assoc_Expression(out exprNode); Expect(10); } else SynErr(99); DesignScript.Parser.Associative.UnaryExpressionNode unary = new DesignScript.Parser.Associative.UnaryExpressionNode(); unary.op = op; unary.Expression = exprNode; node = unary; }