Esempio n. 1
0
        public override object VisitMultiLineString(MFSHParser.MultiLineStringContext context)
        {
            String        text  = context.GetText().Trim();
            List <String> lines = context.GetText().Split('\n').ToList();

            if (lines.Count == 0)
            {
                return(null);
            }

            for (Int32 i = 0; i < lines.Count; i++)
            {
                String line = lines[i];
                {
                    Regex r = new Regex("^[ ]*#");
                    Match m = r.Match(line);
                    if (m.Success == true)
                    {
                        line = line.Substring(m.Length);
                    }
                }
                lines[i] = line;
            }

            if (lines[0].StartsWith("\"\"\""))
            {
                lines[0] = lines[0].Substring(3);
            }
            if (lines[^ 1].EndsWith("\"\"\""))
Esempio n. 2
0
 /// <summary>
 /// Visit a parse tree produced by <see cref="MFSHParser.multiLineString"/>.
 /// <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 VisitMultiLineString([NotNull] MFSHParser.MultiLineStringContext context)
 {
     return(VisitChildren(context));
 }