示例#1
0
 public override void EnterWhitespace([NotNull] TxMarkParser.WhitespaceContext context)
 {
     if (context.Parent is TxMarkParser.PhraseContext || context.Parent is TxMarkParser.HtmlAttributeValueContentContext)
     {
         var whitespace = context.GetText();
         var newLines   = whitespace.Split('\n');
         if (newLines.Length == 1)
         {
             _compileContext.Whitespace();
         }
         else
         {
             for (int i = 1; i < newLines.Length; i++)
             {
                 _compileContext.NewLine();
             }
         }
     }
     else
     {
         Debug.WriteLine($"Whitespace ignored under {context.Parent.GetType()}");
     }
 }
 /// <summary>
 /// Exit a parse tree produced by <see cref="TxMarkParser.whitespace"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void ExitWhitespace([NotNull] TxMarkParser.WhitespaceContext context)
 {
 }
示例#3
0
 /// <summary>
 /// Visit a parse tree produced by <see cref="TxMarkParser.whitespace"/>.
 /// <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 VisitWhitespace([NotNull] TxMarkParser.WhitespaceContext context)
 {
     return(VisitChildren(context));
 }