public override Comment VisitComment([NotNull] CommentContext context) { var result = new List <ITextArea>(); var indentation = context.indentation(); int length = indentation == null ? 0 : indentation.GetText().Length; IndentationTracker.Track(length); var commentLineContext = context.commentLineNoBreak(); if (commentLineContext != null) { var visitor = new TextAreaVisitor().Inherit(this); result.Add(visitor.VisitCommentLineNoBreak(commentLineContext)); } var linesContext = context.commentParagraphs(); if (linesContext != null) { var lineVisitor = new TextAreasVisitor().Inherit(this); result.AddRange(lineVisitor.VisitCommentParagraphs(linesContext)); } return(new Comment(result) { Indentation = length }); }