public MarkupBlock( BlockKindInternal BlockKind, IParentChunkGenerator chunkGenerator, IReadOnlyList <SyntaxTreeNode> children) : base(BlockKind, children, chunkGenerator) { }
public ClassifiedSpanInternal(SourceSpan span, SourceSpan blockSpan, SpanKindInternal spanKind, BlockKindInternal blockKind, AcceptedCharactersInternal acceptedCharacters) { Span = span; BlockSpan = blockSpan; SpanKind = spanKind; BlockKind = blockKind; AcceptedCharacters = acceptedCharacters; }
/// <summary> /// Starts a block of the specified type /// </summary> /// <param name="blockType">The type of the block to start</param> public IDisposable StartBlock(BlockKindInternal blockType) { var builder = new BlockBuilder() { Type = blockType }; _blockStack.Push(builder); return(new DisposableAction(_endBlock)); }
internal virtual Block CreateSimpleBlockAndSpan(string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters = AcceptedCharactersInternal.Any) { var span = Factory.Span(spanType, spanContent, spanType == SpanKindInternal.Markup).Accepts(acceptedCharacters); var b = new BlockBuilder() { Type = blockKind }; return(ConfigureAndAddSpanToBlock(b, span)); }
public ClassifiedSpanVisitor(RazorSourceDocument source) { if (source is null) { throw new ArgumentNullException(nameof(source)); } _source = source; _spans = new List <ClassifiedSpanInternal>(); _currentBlockKind = BlockKindInternal.Markup; }
private void WriteBlock <TNode>(TNode node, BlockKindInternal kind, Action <TNode> handler) where TNode : SyntaxNode { var previousBlock = _currentBlock; var previousKind = _currentBlockKind; _currentBlock = node; _currentBlockKind = kind; handler(node); _currentBlock = previousBlock; _currentBlockKind = previousKind; }
internal override void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, params RazorError[] expectedError) { SingleSpanBlockTest(document, document, blockKind, spanType, expectedError); }
internal override void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorDiagnostic[] expectedErrors) { var b = CreateSimpleBlockAndSpan(spanContent, blockKind, spanType, acceptedCharacters); ParseBlockTest(document, b, expectedErrors ?? new RazorDiagnostic[0]); }
internal override void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorDiagnostic[] expectedError) { SingleSpanBlockTest(document, document, blockKind, spanType, acceptedCharacters, expectedError); }
internal override void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, params RazorDiagnostic[] expectedErrors) { SingleSpanBlockTest(document, spanContent, blockKind, spanType, AcceptedCharactersInternal.Any, expectedErrors ?? new RazorDiagnostic[0]); }
internal override void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters = AcceptedCharactersInternal.Any) { SingleSpanBlockTest(document, spanContent, blockKind, spanType, acceptedCharacters, expectedErrors: null); }
internal virtual void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, params RazorDiagnostic[] expectedError) { SingleSpanBlockTest(document, document, blockKind, spanType, expectedError); }
public ClassifiedSpanVisitor(RazorSourceDocument source) { _source = source; _spans = new List <ClassifiedSpanInternal>(); _currentBlockKind = BlockKindInternal.Markup; }
internal virtual void SingleSpanDocumentTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType) { var b = CreateSimpleBlockAndSpan(document, blockKind, spanType); ParseDocumentTest(document, b); }
internal virtual void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters = AcceptedCharactersInternal.Any) { SingleSpanBlockTest(document, blockKind, spanType, acceptedCharacters, expectedError: null); }
internal virtual void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorError[] expectedErrors) { var result = ParseBlock(document, designTime: false); var builder = new BlockBuilder(); builder.Type = blockKind; var expected = ConfigureAndAddSpanToBlock(builder, Factory.Span(spanType, spanContent, spanType == SpanKindInternal.Markup).Accepts(acceptedCharacters)); if (FixupSpans) { SpancestryCorrector.Correct(expected); var span = expected.FindFirstDescendentSpan(); span.ChangeStart(SourceLocation.Zero); } SyntaxTreeVerifier.Verify(result); SyntaxTreeVerifier.Verify(expected); if (!ReferenceEquals(expected, IgnoreOutput)) { EvaluateResults(result, expected, expectedErrors?.Select(error => RazorDiagnostic.Create(error)).ToList()); } }
internal virtual void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorError[] expectedError) { SingleSpanBlockTest(document, document, blockKind, spanType, acceptedCharacters, expectedError); }