public override object VisitTransitionInnerBlock(CdeltaParser.TransitionInnerBlockContext context) { contextWithStructure.Add(context, (Transition)contextWithStructure[context.Parent]); if (context.transitionCondition() == null) { throw new InvalidOperationException("Transitions must have a condition code block."); } return(base.VisitTransitionInnerBlock(context)); }
/// <summary> /// Exit a parse tree produced by <see cref="CdeltaParser.transitionInnerBlock"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitTransitionInnerBlock([NotNull] CdeltaParser.TransitionInnerBlockContext context) { }
/// <summary> /// Visit a parse tree produced by <see cref="CdeltaParser.transitionInnerBlock"/>. /// <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 VisitTransitionInnerBlock([NotNull] CdeltaParser.TransitionInnerBlockContext context) { return(VisitChildren(context)); }