/// <summary> /// Visiting a standard set (non system). /// </summary> public override IroVariable VisitSet([NotNull] iroParser.SetContext context) { //Create a name for this set if necessary. string name; if (context.IDENTIFIER() == null) { name = "set_" + ShortId.Generate(RAND_ID_LEN); } else { name = context.IDENTIFIER().GetText(); } //Get the value of the set from the typed definition. var set = VisitTyped_set(context.typed_set()); //Return attribute. return(new IroAttribute(name, set)); }
/// <summary> /// Visit a parse tree produced by <see cref="iroParser.set"/>. /// <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 VisitSet([NotNull] iroParser.SetContext context) { return(VisitChildren(context)); }
/// <summary> /// Exit a parse tree produced by <see cref="iroParser.set"/>. /// <para>The default implementation does nothing.</para> /// </summary> /// <param name="context">The parse tree.</param> public virtual void ExitSet([NotNull] iroParser.SetContext context) { }