示例#1
0
        /// <summary>
        /// Creates a clause with the span defined by the passed context
        /// </summary>
        /// <param name="context">Parser rule context</param>
        public SourceContextNode(Z80TestParser.SourceContextContext context) : base(context)
        {
            SourceKeywordSpan = new TextSpan(context.SOURCE());
            SourceFileSpan    = new TextSpan(context.STRING());
            SourceFile        = context.STRING()?.GetText().Unquote();
            Symbols           = new List <IdentifierNameNode>();
            if (context.ChildCount < 4)
            {
                return;
            }

            SymbolsKeywordSpan = new TextSpan(context.SYMBOLS());
            foreach (var id in context.IDENTIFIER())
            {
                Symbols.Add(new IdentifierNameNode(id));
            }
        }
 /// <summary>
 /// Enter a parse tree produced by <see cref="Z80TestParser.sourceContext"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void EnterSourceContext([NotNull] Z80TestParser.SourceContextContext context)
 {
 }
示例#3
0
 /// <summary>
 /// Visit a parse tree produced by <see cref="Z80TestParser.sourceContext"/>.
 /// <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 VisitSourceContext([NotNull] Z80TestParser.SourceContextContext context)
 {
     return(VisitChildren(context));
 }
 /// <summary>
 /// Visit a parse tree produced by <see cref="Z80TestParser.sourceContext"/>.
 /// <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 override object VisitSourceContext(Z80TestParser.SourceContextContext context)
 {
     return(IsInvalidContext(context)
         ? null
         : new SourceContextNode(context));
 }