示例#1
0
文件: QtParser.cs 项目: mbid/qt
    public LetExprContext letExpr()
    {
        LetExprContext _localctx = new LetExprContext(Context, State);

        EnterRule(_localctx, 10, RULE_letExpr);
        try {
            EnterOuterAlt(_localctx, 1);
            {
                State = 83; Match(T__8);
                State = 84; _localctx.varName = defId();
                State = 85; Match(T__1);
                State = 86; _localctx.ty = expr(0);
                State = 87; Match(T__2);
                State = 88; _localctx.val = expr(0);
                State = 89; Match(T__9);
                State = 90; _localctx.body = expr(0);
            }
        }
        catch (RecognitionException re) {
            _localctx.exception = re;
            ErrorHandler.ReportError(this, re);
            ErrorHandler.Recover(this, re);
        }
        finally {
            ExitRule();
        }
        return(_localctx);
    }
 public IHolderCil Visit(LetExprContext parserRule, IFunctionCil cilTree, IContextCil contextCil)
 {
     return(Visit(parserRule.let, cilTree, contextCil));
 }
 public void Visit(LetExprContext parserRule, IObjectContext <IVar, IVar> context)
 {
     Visit(parserRule.let, context);
     parserRule.computedType = parserRule.let.computedType;
 }