public override void VisitTemplateBlock(TemplateBlockChunkGenerator chunkGenerator, Block block) { var templateNode = new TemplateIntermediateNode(); _builder.Push(templateNode); VisitDefault(block); _builder.Pop(); if (templateNode.Children.Count > 0) { var sourceRangeStart = templateNode .Children .FirstOrDefault(child => child.Source != null) ?.Source; if (sourceRangeStart != null) { var contentLength = templateNode.Children.Sum(child => child.Source?.Length ?? 0); templateNode.Source = new SourceSpan( sourceRangeStart.Value.FilePath ?? FilePath, sourceRangeStart.Value.AbsoluteIndex, sourceRangeStart.Value.LineIndex, sourceRangeStart.Value.CharacterIndex, contentLength); } } }
public virtual void VisitTemplateBlock(TemplateBlockChunkGenerator chunkGenerator, Block block) { VisitDefault(block); }