public void unrollRecursionContexts(ParserRuleContext _parentctx) {_precedenceStack.pop();_ctx.stop = _input.LT(-1);ParserRuleContext retctx = _ctx; if ( _parseListeners != null ) {while ( _ctx != _parentctx ) {triggerExitRuleEvent();_ctx = (ParserRuleContext)_ctx.parent;}}else {_ctx = _parentctx;}retctx.parent = _parentctx;if (_buildParseTrees && _parentctx != null) {_parentctx.addChild(retctx);}}

public virtual void UnrollRecursionContexts(ParserRuleContext _parentctx){_precedenceStack.RemoveAt(_precedenceStack.Count - 1);_ctx.Stop = _input.LT(-1);ParserRuleContext retctx = _ctx;if (_parseListeners != null){while (_ctx != _parentctx){TriggerExitRuleEvent();_ctx = (ParserRuleContext)_ctx.Parent;}}else{_ctx = _parentctx;}retctx.Parent = _parentctx;if (_buildParseTrees && _parentctx != null){_parentctx.AddChild(retctx);}}
