From 5a1090f3240aa50bf1930a6f928d755047ef279e Mon Sep 17 00:00:00 2001
From: Ryan Nowak
Date: Wed, 17 May 2017 22:02:08 -0700
Subject: [PATCH] Api Cleanup for language services
Created internal + public versions of
- BlockKind
- SpanKind
- AcceptedCharacters
That way these types are only exposed through the VS apis and not
through the runtime API surface.
Also deleted RazorEditorParser. Yep. It's going to take significant work
to just port it to the language services assembly. Let's reevaluate this
when we get closer to the next foundational update.
---
.../DefaultDirectiveSyntaxTreePass.cs | 2 +-
.../Legacy/AcceptedCharactersInternal.cs | 22 +
.../Legacy/AutoCompleteEditHandler.cs | 2 +-
.../Legacy/BackgroundParser.cs | 447 -----
.../Legacy/Block.cs | 4 +-
.../Legacy/BlockBuilder.cs | 2 +-
.../Legacy/BlockKindInternal.cs | 24 +
.../Legacy/CSharpCodeParser.cs | 150 +-
.../Legacy/DocumentParseCompleteEventArgs.cs | 31 -
.../Legacy/HtmlMarkupParser.cs | 146 +-
.../Legacy/ITextBuffer.cs | 2 +-
.../Legacy/ImplicitExpressionEditHandler.cs | 2 +-
.../Legacy/MarkupRewriter.cs | 2 +-
.../Legacy/PartialParseResult.cs | 2 +-
.../Legacy/RazorEditorParser.cs | 268 ---
.../Legacy/Span.cs | 2 +-
.../Legacy/SpanBuilder.cs | 2 +-
.../Legacy/SpanEditHandler.cs | 8 +-
.../Legacy/SpanKindInternal.cs | 14 +
.../Legacy/SyntaxTreeBuilder.cs | 6 +-
.../Legacy/TagHelperBlockBuilder.cs | 4 +-
.../Legacy/TagHelperBlockRewriter.cs | 14 +-
.../Legacy/TagHelperParseTreeRewriter.cs | 12 +-
.../Legacy/TextChange.cs | 248 ---
.../Legacy/TokenizerBackedParser.cs | 24 +-
.../Legacy/WhiteSpaceRewriter.cs | 2 +-
.../LineMapping.cs | 6 +-
.../RequiredAttributeDescriptorComparer.cs | 0
.../AcceptedCharacters.cs | 2 +-
.../BlockKind.cs | 2 +-
.../DefaultRazorSyntaxFactsService.cs | 12 +-
.../SpanKind.cs | 2 +-
.../HtmlNodeOptimizationPassTest.cs | 2 +-
.../Legacy/BlockFactory.cs | 10 +-
.../Legacy/BlockTest.cs | 10 +-
.../Legacy/BlockTypes.cs | 16 +-
.../Legacy/CSharpAutoCompleteTest.cs | 42 +-
.../Legacy/CSharpBlockTest.cs | 384 ++---
.../Legacy/CSharpDirectivesTest.cs | 340 ++--
.../Legacy/CSharpErrorTest.cs | 96 +-
.../Legacy/CSharpExplicitExpressionTest.cs | 38 +-
.../Legacy/CSharpImplicitExpressionTest.cs | 46 +-
.../Legacy/CSharpNestedStatementsTest.cs | 24 +-
.../Legacy/CSharpRazorCommentsTest.cs | 176 +-
.../Legacy/CSharpReservedWordsTest.cs | 4 +-
.../Legacy/CSharpSectionTest.cs | 330 ++--
.../Legacy/CSharpSpecialBlockTest.cs | 62 +-
.../Legacy/CSharpStatementTest.cs | 32 +-
.../Legacy/CSharpTemplateTest.cs | 72 +-
.../Legacy/CSharpToMarkupSwitchTest.cs | 248 +--
.../Legacy/CSharpVerbatimBlockTest.cs | 34 +-
.../Legacy/CSharpWhitespaceHandlingTest.cs | 8 +-
.../Legacy/CodeParserTestBase.cs | 22 +-
.../Legacy/HtmlAttributeTest.cs | 66 +-
.../Legacy/HtmlBlockTest.cs | 216 +--
.../Legacy/HtmlDocumentTest.cs | 192 +--
.../Legacy/HtmlErrorTest.cs | 20 +-
.../Legacy/HtmlParserTestUtils.cs | 6 +-
.../Legacy/HtmlTagsTest.cs | 46 +-
.../Legacy/HtmlToCodeSwitchTest.cs | 164 +-
.../Legacy/MarkupParserTestBase.cs | 2 +-
.../Legacy/ParserTestBase.cs | 28 +-
.../Legacy/RazorEditorParserTest.cs | 1452 -----------------
.../Legacy/RazorParserTest.cs | 4 +-
.../Legacy/TagHelperBlockRewriterTest.cs | 58 +-
.../Legacy/TagHelperParseTreeRewriterTest.cs | 222 +--
.../Legacy/TestSpanBuilder.cs | 80 +-
.../Legacy/TextChangeTest.cs | 274 ----
.../RazorSyntaxTreeTest.cs | 2 +-
69 files changed, 1817 insertions(+), 4477 deletions(-)
create mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/AcceptedCharactersInternal.cs
delete mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/BackgroundParser.cs
create mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockKindInternal.cs
delete mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/DocumentParseCompleteEventArgs.cs
delete mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/RazorEditorParser.cs
create mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/SpanKindInternal.cs
delete mode 100644 src/Microsoft.AspNetCore.Razor.Language/Legacy/TextChange.cs
rename src/Microsoft.AspNetCore.Razor.Language/{Legacy => }/RequiredAttributeDescriptorComparer.cs (100%)
rename src/{Microsoft.AspNetCore.Razor.Language => Microsoft.VisualStudio.LanguageServices.Razor}/AcceptedCharacters.cs (89%)
rename src/{Microsoft.AspNetCore.Razor.Language => Microsoft.VisualStudio.LanguageServices.Razor}/BlockKind.cs (88%)
rename src/{Microsoft.AspNetCore.Razor.Language => Microsoft.VisualStudio.LanguageServices.Razor}/SpanKind.cs (83%)
delete mode 100644 test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/RazorEditorParserTest.cs
delete mode 100644 test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/TextChangeTest.cs
diff --git a/src/Microsoft.AspNetCore.Razor.Language/DefaultDirectiveSyntaxTreePass.cs b/src/Microsoft.AspNetCore.Razor.Language/DefaultDirectiveSyntaxTreePass.cs
index fe2c6e92b2..69869f6492 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/DefaultDirectiveSyntaxTreePass.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/DefaultDirectiveSyntaxTreePass.cs
@@ -54,7 +54,7 @@ namespace Microsoft.AspNetCore.Razor.Language
{
if (_nestedLevel > 0)
{
- var directiveStart = block.Children.First(child => !child.IsBlock && ((Span)child).Kind == SpanKind.Transition).Start;
+ var directiveStart = block.Children.First(child => !child.IsBlock && ((Span)child).Kind == SpanKindInternal.Transition).Start;
var errorLength = /* @ */ 1 + CSharpCodeParser.SectionDirectiveDescriptor.Name.Length;
_errorSink.OnError(
directiveStart,
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/AcceptedCharactersInternal.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/AcceptedCharactersInternal.cs
new file mode 100644
index 0000000000..f6b658f769
--- /dev/null
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/AcceptedCharactersInternal.cs
@@ -0,0 +1,22 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+using System;
+
+namespace Microsoft.AspNetCore.Razor.Language.Legacy
+{
+ [Flags]
+ internal enum AcceptedCharactersInternal
+ {
+ None = 0,
+ NewLine = 1,
+ WhiteSpace = 2,
+
+ NonWhiteSpace = 4,
+
+ AllWhiteSpace = NewLine | WhiteSpace,
+ Any = AllWhiteSpace | NonWhiteSpace,
+
+ AnyExceptNewline = NonWhiteSpace | WhiteSpace
+ }
+}
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/AutoCompleteEditHandler.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/AutoCompleteEditHandler.cs
index 48bfa5dbc1..ae4291f987 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/AutoCompleteEditHandler.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/AutoCompleteEditHandler.cs
@@ -22,7 +22,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AutoCompleteAtEndOfSpan = autoCompleteAtEndOfSpan;
}
- public AutoCompleteEditHandler(Func> tokenizer, AcceptedCharacters accepted)
+ public AutoCompleteEditHandler(Func> tokenizer, AcceptedCharactersInternal accepted)
: base(tokenizer, accepted)
{
}
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/BackgroundParser.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/BackgroundParser.cs
deleted file mode 100644
index bc9a97a43f..0000000000
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/BackgroundParser.cs
+++ /dev/null
@@ -1,447 +0,0 @@
-// Copyright (c) .NET Foundation. All rights reserved.
-// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Threading;
-
-namespace Microsoft.AspNetCore.Razor.Language.Legacy
-{
- internal class BackgroundParser : IDisposable
- {
- private MainThreadState _main;
- private BackgroundThread _bg;
-
- public BackgroundParser(RazorTemplateEngine templateEngine, string fileName)
- {
- _main = new MainThreadState(fileName);
- _bg = new BackgroundThread(_main, templateEngine, fileName);
-
- _main.ResultsReady += (sender, args) => OnResultsReady(args);
- }
-
- ///
- /// Fired on the main thread.
- ///
- public event EventHandler ResultsReady;
-
- public bool IsIdle
- {
- get { return _main.IsIdle; }
- }
-
- public void Start()
- {
- _bg.Start();
- }
-
- public void Cancel()
- {
- _main.Cancel();
- }
-
-#pragma warning disable CS0612 // Type or member is obsolete
- public void QueueChange(TextChange change)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- _main.QueueChange(change);
- }
-
- public void Dispose()
- {
- _main.Cancel();
- }
-
- public IDisposable SynchronizeMainThreadState()
- {
- return _main.Lock();
- }
-
- protected virtual void OnResultsReady(DocumentParseCompleteEventArgs args)
- {
- var handler = ResultsReady;
- if (handler != null)
- {
- handler(this, args);
- }
- }
-
-#pragma warning disable CS0612 // Type or member is obsolete
- internal static bool TreesAreDifferent(RazorSyntaxTree leftTree, RazorSyntaxTree rightTree, IEnumerable changes, CancellationToken cancelToken)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- return TreesAreDifferent(leftTree.Root, rightTree.Root, changes, cancelToken);
- }
-
-#pragma warning disable CS0612 // Type or member is obsolete
- internal static bool TreesAreDifferent(Block leftTree, Block rightTree, IEnumerable changes)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- return TreesAreDifferent(leftTree, rightTree, changes, CancellationToken.None);
- }
-
-#pragma warning disable CS0612 // Type or member is obsolete
- internal static bool TreesAreDifferent(Block leftTree, Block rightTree, IEnumerable changes, CancellationToken cancelToken)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- // Apply all the pending changes to the original tree
- // PERF: If this becomes a bottleneck, we can probably do it the other way around,
- // i.e. visit the tree and find applicable changes for each node.
-#pragma warning disable CS0612 // Type or member is obsolete
- foreach (var change in changes)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- cancelToken.ThrowIfCancellationRequested();
-
- var sourceChange = change.AsSourceChange();
- var changeOwner = leftTree.LocateOwner(sourceChange);
-
- // Apply the change to the tree
- if (changeOwner == null)
- {
- return true;
- }
-
- var result = changeOwner.EditHandler.ApplyChange(changeOwner, sourceChange, force: true);
- changeOwner.ReplaceWith(result.EditedSpan);
- }
-
- // Now compare the trees
- var treesDifferent = !leftTree.EquivalentTo(rightTree);
- return treesDifferent;
- }
-
- private abstract class ThreadStateBase
- {
-#if DEBUG
- private int _id = -1;
-#endif
- protected ThreadStateBase()
- {
- }
-
- [Conditional("DEBUG")]
- protected void SetThreadId(int id)
- {
-#if DEBUG
- _id = id;
-#endif
- }
-
- [Conditional("DEBUG")]
- protected void EnsureOnThread()
- {
-#if DEBUG
- Debug.Assert(_id != -1, "SetThreadId was never called!");
- Debug.Assert(Thread.CurrentThread.ManagedThreadId == _id, "Called from an unexpected thread!");
-#endif
- }
-
- [Conditional("DEBUG")]
- protected void EnsureNotOnThread()
- {
-#if DEBUG
- Debug.Assert(_id != -1, "SetThreadId was never called!");
- Debug.Assert(Thread.CurrentThread.ManagedThreadId != _id, "Called from an unexpected thread!");
-#endif
- }
- }
-
- private class MainThreadState : ThreadStateBase, IDisposable
- {
- private readonly CancellationTokenSource _cancelSource = new CancellationTokenSource();
- private readonly ManualResetEventSlim _hasParcel = new ManualResetEventSlim(false);
- private CancellationTokenSource _currentParcelCancelSource;
-
- private string _fileName;
- private readonly object _stateLock = new object();
-#pragma warning disable CS0612 // Type or member is obsolete
- private IList _changes = new List();
-#pragma warning restore CS0612 // Type or member is obsolete
-
- public MainThreadState(string fileName)
- {
- _fileName = fileName;
-
- SetThreadId(Thread.CurrentThread.ManagedThreadId);
- }
-
- public event EventHandler ResultsReady;
-
- public CancellationToken CancelToken
- {
- get { return _cancelSource.Token; }
- }
-
- public bool IsIdle
- {
- get
- {
- lock (_stateLock)
- {
- return _currentParcelCancelSource == null;
- }
- }
- }
-
- public void Cancel()
- {
- EnsureOnThread();
- _cancelSource.Cancel();
- }
-
- public IDisposable Lock()
- {
- Monitor.Enter(_stateLock);
- return new DisposableAction(() => Monitor.Exit(_stateLock));
- }
-
-#pragma warning disable CS0612 // Type or member is obsolete
- public void QueueChange(TextChange change)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- EnsureOnThread();
- lock (_stateLock)
- {
- // CurrentParcel token source is not null ==> There's a parse underway
- if (_currentParcelCancelSource != null)
- {
- _currentParcelCancelSource.Cancel();
- }
-
- _changes.Add(change);
- _hasParcel.Set();
- }
- }
-
- public WorkParcel GetParcel()
- {
- EnsureNotOnThread(); // Only the background thread can get a parcel
- _hasParcel.Wait(_cancelSource.Token);
- _hasParcel.Reset();
- lock (_stateLock)
- {
- // Create a cancellation source for this parcel
- _currentParcelCancelSource = new CancellationTokenSource();
-
- var changes = _changes;
-#pragma warning disable CS0612 // Type or member is obsolete
- _changes = new List();
-#pragma warning restore CS0612 // Type or member is obsolete
- return new WorkParcel(changes, _currentParcelCancelSource.Token);
- }
- }
-
- public void ReturnParcel(DocumentParseCompleteEventArgs args)
- {
- lock (_stateLock)
- {
- // Clear the current parcel cancellation source
- if (_currentParcelCancelSource != null)
- {
- _currentParcelCancelSource.Dispose();
- _currentParcelCancelSource = null;
- }
-
- // If there are things waiting to be parsed, just don't fire the event because we're already out of date
- if (_changes.Any())
- {
- return;
- }
- }
- var handler = ResultsReady;
- if (handler != null)
- {
- handler(this, args);
- }
- }
-
- public void Dispose()
- {
- Dispose(true);
- GC.SuppressFinalize(this);
- }
-
- protected virtual void Dispose(bool disposing)
- {
- if (disposing)
- {
- if (_currentParcelCancelSource != null)
- {
- _currentParcelCancelSource.Dispose();
- _currentParcelCancelSource = null;
- }
- _cancelSource.Dispose();
- _hasParcel.Dispose();
- }
- }
- }
-
- private class BackgroundThread : ThreadStateBase
- {
- private MainThreadState _main;
- private Thread _backgroundThread;
- private CancellationToken _shutdownToken;
- private RazorTemplateEngine _templateEngine;
- private string _fileName;
- private RazorSyntaxTree _currentSyntaxTree;
-#pragma warning disable CS0612 // Type or member is obsolete
- private IList _previouslyDiscarded = new List();
-#pragma warning restore CS0612 // Type or member is obsolete
-
- public BackgroundThread(MainThreadState main, RazorTemplateEngine templateEngine, string fileName)
- {
- // Run on MAIN thread!
- _main = main;
- _shutdownToken = _main.CancelToken;
- _templateEngine = templateEngine;
- _fileName = fileName;
-
- _backgroundThread = new Thread(WorkerLoop);
- SetThreadId(_backgroundThread.ManagedThreadId);
- }
-
- // **** ANY THREAD ****
- public void Start()
- {
- _backgroundThread.Start();
- }
-
- // **** BACKGROUND THREAD ****
- private void WorkerLoop()
- {
- var fileNameOnly = Path.GetFileName(_fileName);
-
- try
- {
- EnsureOnThread();
-
-#if NETSTANDARD1_3
- var spinWait = new SpinWait();
-#endif
-
- while (!_shutdownToken.IsCancellationRequested)
- {
- // Grab the parcel of work to do
- var parcel = _main.GetParcel();
- if (parcel.Changes.Any())
- {
- try
- {
- DocumentParseCompleteEventArgs args = null;
- using (var linkedCancel = CancellationTokenSource.CreateLinkedTokenSource(_shutdownToken, parcel.CancelToken))
- {
- if (!linkedCancel.IsCancellationRequested)
- {
- // Collect ALL changes
-#pragma warning disable CS0612 // Type or member is obsolete
- List allChanges;
-#pragma warning restore CS0612 // Type or member is obsolete
-
- if (_previouslyDiscarded != null)
- {
- allChanges = Enumerable.Concat(_previouslyDiscarded, parcel.Changes).ToList();
- }
- else
- {
- allChanges = parcel.Changes.ToList();
- }
-
- var finalChange = allChanges.Last();
-
- var results = ParseChange(finalChange.NewBuffer, linkedCancel.Token);
-
- if (results != null && !linkedCancel.IsCancellationRequested)
- {
- // Clear discarded changes list
- _previouslyDiscarded = null;
-
- var treeStructureChanged = _currentSyntaxTree == null || TreesAreDifferent(_currentSyntaxTree, results.GetSyntaxTree(), allChanges, parcel.CancelToken);
- _currentSyntaxTree = results.GetSyntaxTree();
-
- // Build Arguments
- args = new DocumentParseCompleteEventArgs()
- {
- GeneratorResults = results,
- SourceChange = finalChange,
- TreeStructureChanged = treeStructureChanged
- };
- }
- else
- {
- // Parse completed but we were cancelled in the mean time. Add these to the discarded changes set
- _previouslyDiscarded = allChanges;
- }
- }
- }
- if (args != null)
- {
- _main.ReturnParcel(args);
- }
- }
- catch (OperationCanceledException)
- {
- }
- }
- else
- {
-#if NETSTANDARD1_3
- // This does the equivalent of thread.yield under the covers.
- spinWait.SpinOnce();
-#else
- // No Yield in CoreCLR
-
- Thread.Yield();
-#endif
- }
- }
- }
- catch (OperationCanceledException)
- {
- // Do nothing. Just shut down.
- }
- finally
- {
- // Clean up main thread resources
- _main.Dispose();
- }
- }
-
- private RazorCodeDocument ParseChange(ITextBuffer buffer, CancellationToken token)
- {
- EnsureOnThread();
-
- // Seek the buffer to the beginning
- buffer.Position = 0;
-
- var sourceDocument = LegacySourceDocument.Create(buffer, _fileName);
- var imports = _templateEngine.GetImports(_fileName);
-
- var codeDocument = RazorCodeDocument.Create(sourceDocument, imports);
-
- _templateEngine.GenerateCode(codeDocument);
- return codeDocument;
- }
- }
-
- private class WorkParcel
- {
-#pragma warning disable CS0612 // Type or member is obsolete
- public WorkParcel(IList changes, CancellationToken cancelToken)
-#pragma warning restore CS0612 // Type or member is obsolete
- {
- Changes = changes;
- CancelToken = cancelToken;
- }
-
- public CancellationToken CancelToken { get; private set; }
-#pragma warning disable CS0612 // Type or member is obsolete
- public IList Changes { get; private set; }
-#pragma warning restore CS0612 // Type or member is obsolete
- }
- }
-}
-#pragma warning restore CS0618
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/Block.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/Block.cs
index 39fc09ea9e..781a6e0b5b 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/Block.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/Block.cs
@@ -17,7 +17,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
source.Reset();
}
- protected Block(BlockKind? type, IReadOnlyList children, IParentChunkGenerator generator)
+ protected Block(BlockKindInternal? type, IReadOnlyList children, IParentChunkGenerator generator)
{
if (type == null)
{
@@ -36,7 +36,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
public IParentChunkGenerator ChunkGenerator { get; }
- public BlockKind Type { get; }
+ public BlockKindInternal Type { get; }
public IReadOnlyList Children { get; }
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockBuilder.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockBuilder.cs
index 29046df7e0..3e3905c4a7 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockBuilder.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockBuilder.cs
@@ -21,7 +21,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
public IParentChunkGenerator ChunkGenerator { get; set; }
- public BlockKind? Type { get; set; }
+ public BlockKindInternal? Type { get; set; }
public List Children { get; private set; }
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockKindInternal.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockKindInternal.cs
new file mode 100644
index 0000000000..d5b384a956
--- /dev/null
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/BlockKindInternal.cs
@@ -0,0 +1,24 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+namespace Microsoft.AspNetCore.Razor.Language.Legacy
+{
+ public enum BlockKindInternal
+ {
+ // Code
+ Statement,
+ Directive,
+ Functions,
+ Expression,
+ Helper,
+
+ // Markup
+ Markup,
+ Section,
+ Template,
+
+ // Special
+ Comment,
+ Tag
+ }
+}
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/CSharpCodeParser.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/CSharpCodeParser.cs
index e48004e4e6..3d575bb71d 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/CSharpCodeParser.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/CSharpCodeParser.cs
@@ -190,7 +190,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Span.Start = CurrentLocation;
// Unless changed, the block is a statement block
- using (Context.Builder.StartBlock(BlockKind.Statement))
+ using (Context.Builder.StartBlock(BlockKindInternal.Statement))
{
NextToken();
@@ -218,7 +218,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
if (Span.Symbols.Count > 0)
{
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
}
AtTransition(current);
}
@@ -228,7 +228,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AfterTransition();
}
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
}
}
}
@@ -243,11 +243,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
Debug.Assert(current.Type == CSharpSymbolType.Transition);
Accept(current);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
// Output the "@" span and continue here
- Output(SpanKind.Transition);
+ Output(SpanKindInternal.Transition);
AfterTransition();
}
@@ -263,7 +263,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
if (CurrentSymbol.Type == CSharpSymbolType.LeftParenthesis)
{
- Context.Builder.CurrentBlock.Type = BlockKind.Expression;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Expression;
Context.Builder.CurrentBlock.ChunkGenerator = new ExpressionChunkGenerator();
ExplicitExpression();
return;
@@ -290,7 +290,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
CurrentSymbol.Content.Length);
}
- Context.Builder.CurrentBlock.Type = BlockKind.Expression;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Expression;
Context.Builder.CurrentBlock.ChunkGenerator = new ExpressionChunkGenerator();
ImplicitExpression();
return;
@@ -318,7 +318,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
// Invalid character
- Context.Builder.CurrentBlock.Type = BlockKind.Expression;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Expression;
Context.Builder.CurrentBlock.ChunkGenerator = new ExpressionChunkGenerator();
AddMarkerSymbolIfNecessary();
Span.ChunkGenerator = new ExpressionChunkGenerator();
@@ -327,7 +327,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
CurrentKeywords,
acceptTrailingDot: IsNested)
{
- AcceptedCharacters = AcceptedCharacters.NonWhiteSpace
+ AcceptedCharacters = AcceptedCharactersInternal.NonWhiteSpace
};
if (At(CSharpSymbolType.WhiteSpace) || At(CSharpSymbolType.NewLine))
{
@@ -367,9 +367,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AcceptAndMoveNext();
// Set up the "{" span and output
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
// Set up auto-complete and parse the code block
var editHandler = new AutoCompleteEditHandler(Language.TokenizeString);
@@ -382,12 +382,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
editHandler.AutoCompleteString = "}";
}
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
if (Optional(CSharpSymbolType.RightBrace))
{
// Set up the "}" span
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
}
@@ -401,24 +401,24 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
}
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
}
private void ImplicitExpression()
{
- ImplicitExpression(AcceptedCharacters.NonWhiteSpace);
+ ImplicitExpression(AcceptedCharactersInternal.NonWhiteSpace);
}
// Async implicit expressions include the "await" keyword and therefore need to allow spaces to
// separate the "await" and the following code.
private void AsyncImplicitExpression()
{
- ImplicitExpression(AcceptedCharacters.AnyExceptNewline);
+ ImplicitExpression(AcceptedCharactersInternal.AnyExceptNewline);
}
- private void ImplicitExpression(AcceptedCharacters acceptedCharacters)
+ private void ImplicitExpression(AcceptedCharactersInternal acceptedCharacters)
{
- Context.Builder.CurrentBlock.Type = BlockKind.Expression;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Expression;
Context.Builder.CurrentBlock.ChunkGenerator = new ExpressionChunkGenerator();
using (PushSpanConfig(span =>
@@ -441,11 +441,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
while (MethodCallOrArrayIndex(acceptedCharacters));
PutCurrentBack();
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
}
}
- private bool MethodCallOrArrayIndex(AcceptedCharacters acceptedCharacters)
+ private bool MethodCallOrArrayIndex(AcceptedCharactersInternal acceptedCharacters)
{
if (!EndOfFile)
{
@@ -453,7 +453,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
CurrentSymbol.Type == CSharpSymbolType.LeftBracket)
{
// If we end within "(", whitespace is fine
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
CSharpSymbolType right;
bool success;
@@ -461,7 +461,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
using (PushSpanConfig((span, prev) =>
{
prev(span);
- span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
}))
{
right = Language.FlipBracket(CurrentSymbol.Type);
@@ -555,7 +555,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
protected void CompleteBlock(bool insertMarkerIfNecessary, bool captureWhitespaceToEndOfLine)
{
- if (insertMarkerIfNecessary && Context.Builder.LastAcceptedCharacters != AcceptedCharacters.Any)
+ if (insertMarkerIfNecessary && Context.Builder.LastAcceptedCharacters != AcceptedCharactersInternal.Any)
{
AddMarkerSymbolIfNecessary();
}
@@ -565,7 +565,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Read whitespace, but not newlines
// If we're not inserting a marker span, we don't need to capture whitespace
if (!Context.WhiteSpaceIsSignificantToAncestorBlock &&
- Context.Builder.CurrentBlock.Type != BlockKind.Expression &&
+ Context.Builder.CurrentBlock.Type != BlockKindInternal.Expression &&
captureWhitespaceToEndOfLine &&
!Context.DesignTimeMode &&
!IsNested)
@@ -605,9 +605,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
var block = new Block(LegacyResources.BlockName_ExplicitExpression, CurrentStart);
Assert(CSharpSymbolType.LeftParenthesis);
AcceptAndMoveNext();
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
using (PushSpanConfig(ConfigureExplicitExpressionSpan))
{
var success = Balance(
@@ -634,30 +634,30 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
// Output the content span and then capture the ")"
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
}
Optional(CSharpSymbolType.RightParenthesis);
if (!EndOfFile)
{
PutCurrentBack();
}
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
CompleteBlock(insertMarkerIfNecessary: false);
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
}
private void Template()
{
- if (Context.Builder.ActiveBlocks.Any(block => block.Type == BlockKind.Template))
+ if (Context.Builder.ActiveBlocks.Any(block => block.Type == BlockKindInternal.Template))
{
Context.ErrorSink.OnError(
CurrentStart,
LegacyResources.ParseError_InlineMarkup_Blocks_Cannot_Be_Nested,
length: 1 /* @ */);
}
- Output(SpanKind.Code);
- using (Context.Builder.StartBlock(BlockKind.Template))
+ Output(SpanKindInternal.Code);
+ using (Context.Builder.StartBlock(BlockKindInternal.Template))
{
Context.Builder.CurrentBlock.ChunkGenerator = new TemplateBlockChunkGenerator();
PutCurrentBack();
@@ -677,7 +677,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void NestedBlock()
{
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
var wasNested = IsNested;
IsNested = true;
@@ -759,18 +759,18 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
LegacyResources.FormatParseError_ReservedWord(CurrentSymbol.Content),
CurrentSymbol.Content.Length);
AcceptAndMoveNext();
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Context.Builder.CurrentBlock.Type = BlockKind.Directive;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Directive;
CompleteBlock();
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
}
private void KeywordBlock(bool topLevel)
{
HandleKeyword(topLevel, () =>
{
- Context.Builder.CurrentBlock.Type = BlockKind.Expression;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Expression;
Context.Builder.CurrentBlock.ChunkGenerator = new ExpressionChunkGenerator();
ImplicitExpression();
});
@@ -799,7 +799,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void WhileClause()
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
var whitespace = SkipToNextImportantToken();
if (At(CSharpKeyword.While))
@@ -810,7 +810,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AcceptWhile(IsSpacingToken(includeNewLines: true, includeComments: true));
if (AcceptCondition() && Optional(CSharpSymbolType.Semicolon))
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
}
else
@@ -858,7 +858,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void UsingDeclaration()
{
// Set block type to directive
- Context.Builder.CurrentBlock.Type = BlockKind.Directive;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Directive;
var start = CurrentStart;
if (At(CSharpSymbolType.Identifier))
@@ -892,7 +892,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
NamespaceOrTypeName();
}
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.AnyExceptNewline;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.AnyExceptNewline;
Span.ChunkGenerator = new AddImportChunkGenerator(new LocationTagged(
string.Concat(Span.Symbols.Skip(1).Select(s => s.Content)),
start));
@@ -1028,7 +1028,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Return whitespace and end the block
PutCurrentBack();
PutBack(whitespace);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
}
}
@@ -1049,7 +1049,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// No else, return whitespace
PutCurrentBack();
PutBack(whitespace);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
}
}
@@ -1190,7 +1190,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void Statement(Block block)
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
// Accept whitespace but always keep the last whitespace node so we can put it back if necessary
var lastWhitespace = AcceptWhiteSpaceInLines();
@@ -1249,7 +1249,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
// Markup block
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
if (Context.DesignTimeMode && CurrentSymbol != null &&
(CurrentSymbol.Type == CSharpSymbolType.LessThan || CurrentSymbol.Type == CSharpSymbolType.Transition))
{
@@ -1269,7 +1269,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
switch (type)
{
case CSharpSymbolType.RazorCommentTransition:
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
RazorComment();
Statement(block);
break;
@@ -1310,12 +1310,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (At(CSharpSymbolType.Transition))
{
// Escaped "@"
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
// Output "@" as hidden span
Accept(transition);
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
Assert(CSharpSymbolType.Transition);
AcceptAndMoveNext();
@@ -1376,7 +1376,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
else if (At(CSharpSymbolType.Transition) && (NextIs(CSharpSymbolType.LessThan, CSharpSymbolType.Colon)))
{
Accept(read);
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
Template();
}
else if (At(CSharpSymbolType.RazorCommentTransition))
@@ -1430,7 +1430,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
else if (acceptTerminatingBrace)
{
Assert(CSharpSymbolType.RightBrace);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
AcceptAndMoveNext();
}
}
@@ -1456,7 +1456,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (At(CSharpSymbolType.RazorCommentTransition))
{
Accept(whitespace);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
RazorComment();
}
else
@@ -1471,7 +1471,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
protected override void OutputSpanBeforeRazorComment()
{
AddMarkerSymbolIfNecessary();
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
}
private void SetUpExpressions()
@@ -1521,12 +1521,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void HandleDirective(DirectiveDescriptor descriptor)
{
- Context.Builder.CurrentBlock.Type = BlockKind.Directive;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Directive;
Context.Builder.CurrentBlock.ChunkGenerator = new DirectiveChunkGenerator(descriptor);
AssertDirective(descriptor.Name);
AcceptAndMoveNext();
- Output(SpanKind.MetaCode, AcceptedCharacters.None);
+ Output(SpanKindInternal.MetaCode, AcceptedCharactersInternal.None);
for (var i = 0; i < descriptor.Tokens.Count; i++)
{
@@ -1538,12 +1538,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
tokenDescriptor.Kind == DirectiveTokenKind.Type)
{
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Code, AcceptedCharacters.WhiteSpace);
+ Output(SpanKindInternal.Code, AcceptedCharactersInternal.WhiteSpace);
}
else
{
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Markup, AcceptedCharacters.WhiteSpace);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.WhiteSpace);
}
if (tokenDescriptor.Optional && (EndOfFile || At(CSharpSymbolType.NewLine)))
@@ -1559,7 +1559,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
return;
}
- var outputKind = SpanKind.Markup;
+ var outputKind = SpanKindInternal.Markup;
switch (tokenDescriptor.Kind)
{
case DirectiveTokenKind.Type:
@@ -1573,7 +1573,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
return;
}
- outputKind = SpanKind.Code;
+ outputKind = SpanKindInternal.Code;
break;
case DirectiveTokenKind.Namespace:
@@ -1587,7 +1587,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
return;
}
- outputKind = SpanKind.Code;
+ outputKind = SpanKindInternal.Code;
break;
case DirectiveTokenKind.Member:
@@ -1604,7 +1604,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
return;
}
- outputKind = SpanKind.Code;
+ outputKind = SpanKindInternal.Code;
break;
case DirectiveTokenKind.String:
@@ -1624,7 +1624,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
Span.ChunkGenerator = new DirectiveTokenChunkGenerator(tokenDescriptor);
- Output(outputKind, AcceptedCharacters.NonWhiteSpace);
+ Output(outputKind, AcceptedCharactersInternal.NonWhiteSpace);
}
AcceptWhile(IsSpacingToken(includeNewLines: false, includeComments: true));
@@ -1648,11 +1648,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
CurrentSymbol.Content.Length);
}
- Output(SpanKind.Markup, AcceptedCharacters.WhiteSpace);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.WhiteSpace);
break;
case DirectiveKind.RazorBlock:
AcceptWhile(IsSpacingToken(includeNewLines: true, includeComments: true));
- Output(SpanKind.Markup, AcceptedCharacters.AllWhiteSpace);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.AllWhiteSpace);
ParseDirectiveBlock(descriptor, parseChildren: (startingBraceLocation) =>
{
@@ -1677,14 +1677,14 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
break;
case DirectiveKind.CodeBlock:
AcceptWhile(IsSpacingToken(includeNewLines: true, includeComments: true));
- Output(SpanKind.Markup, AcceptedCharacters.AllWhiteSpace);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.AllWhiteSpace);
ParseDirectiveBlock(descriptor, parseChildren: (startingBraceLocation) =>
{
NextToken();
Balance(BalancingModes.NoErrorOnFailure, CSharpSymbolType.LeftBrace, CSharpSymbolType.RightBrace, startingBraceLocation);
Span.ChunkGenerator = new StatementChunkGenerator();
- Output(SpanKind.Code);
+ Output(SpanKindInternal.Code);
});
break;
}
@@ -1713,7 +1713,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
var startingBraceLocation = CurrentStart;
Accept(CurrentSymbol);
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode, AcceptedCharacters.None);
+ Output(SpanKindInternal.MetaCode, AcceptedCharactersInternal.None);
parseChildren(startingBraceLocation);
@@ -1728,11 +1728,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
else
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
CompleteBlock(insertMarkerIfNecessary: false, captureWhitespaceToEndOfLine: true);
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode, AcceptedCharacters.None);
+ Output(SpanKindInternal.MetaCode, AcceptedCharactersInternal.None);
}
}
@@ -1769,7 +1769,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
var keywordStartLocation = Span.Start;
// Set the block type
- Context.Builder.CurrentBlock.Type = BlockKind.Directive;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Directive;
var keywordLength = Span.End.AbsoluteIndex - Span.Start.AbsoluteIndex;
@@ -1778,10 +1778,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (Span.Symbols.Count > 1)
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
if (remainingWhitespace != null)
{
@@ -1814,7 +1814,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Output the span and finish the block
CompleteBlock();
- Output(SpanKind.Code, AcceptedCharacters.AnyExceptNewline);
+ Output(SpanKindInternal.Code, AcceptedCharactersInternal.AnyExceptNewline);
}
private void TagHelperDirective(string keyword, Func chunkGeneratorFactory)
@@ -1826,7 +1826,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AcceptAndMoveNext();
// Set the block type
- Context.Builder.CurrentBlock.Type = BlockKind.Directive;
+ Context.Builder.CurrentBlock.Type = BlockKindInternal.Directive;
var keywordLength = Span.End.AbsoluteIndex - Span.Start.AbsoluteIndex;
@@ -1835,7 +1835,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// If we found whitespace then any content placed within the whitespace MAY cause a destructive change
// to the document. We can't accept it.
- Output(SpanKind.MetaCode, foundWhitespace ? AcceptedCharacters.None : AcceptedCharacters.AnyExceptNewline);
+ Output(SpanKindInternal.MetaCode, foundWhitespace ? AcceptedCharactersInternal.None : AcceptedCharactersInternal.AnyExceptNewline);
ISpanChunkGenerator chunkGenerator;
if (EndOfFile || At(CSharpSymbolType.NewLine))
@@ -1876,7 +1876,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Output the span and finish the block
CompleteBlock();
- Output(SpanKind.Code, AcceptedCharacters.AnyExceptNewline);
+ Output(SpanKindInternal.Code, AcceptedCharactersInternal.AnyExceptNewline);
}
protected class Block
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/DocumentParseCompleteEventArgs.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/DocumentParseCompleteEventArgs.cs
deleted file mode 100644
index 3a8d1e09fe..0000000000
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/DocumentParseCompleteEventArgs.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) .NET Foundation. All rights reserved.
-// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-
-using System;
-
-namespace Microsoft.AspNetCore.Razor.Language.Legacy
-{
- ///
- /// Arguments for the DocumentParseComplete event in RazorEditorParser
- ///
- public class DocumentParseCompleteEventArgs : EventArgs
- {
- ///
- /// Indicates if the tree structure has actually changed since the previous re-parse.
- ///
- public bool TreeStructureChanged { get; set; }
-
- ///
- /// The result of the parsing and code generation.
- ///
- public RazorCodeDocument GeneratorResults { get; set; }
-
-
- ///
- /// The TextChange which triggered the re-parse
- ///
-#pragma warning disable CS0612 // Type or member is obsolete
- public TextChange SourceChange { get; set; }
-#pragma warning restore CS0612 // Type or member is obsolete
- }
-}
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Legacy/HtmlMarkupParser.cs b/src/Microsoft.AspNetCore.Razor.Language/Legacy/HtmlMarkupParser.cs
index 8b35853989..4ac8b37773 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Legacy/HtmlMarkupParser.cs
+++ b/src/Microsoft.AspNetCore.Razor.Language/Legacy/HtmlMarkupParser.cs
@@ -60,14 +60,14 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
public override void BuildSpan(SpanBuilder span, SourceLocation start, string content)
{
- span.Kind = SpanKind.Markup;
+ span.Kind = SpanKindInternal.Markup;
span.ChunkGenerator = new MarkupChunkGenerator();
base.BuildSpan(span, start, content);
}
protected override void OutputSpanBeforeRazorComment()
{
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
protected void SkipToAndParseCode(HtmlSymbolType type)
@@ -91,7 +91,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AcceptAndMoveNext();
}
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
else if (At(HtmlSymbolType.NewLine))
{
@@ -116,10 +116,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Accept(last);
last = null;
}
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
Accept(transition);
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
AcceptAndMoveNext();
continue; // while
}
@@ -161,7 +161,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
AddMarkerSymbolIfNecessary();
// Output the symbols that may have been accepted prior to the whitespace.
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
Span.ChunkGenerator = SpanChunkGenerator.Null;
}
@@ -171,7 +171,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
}
AddMarkerSymbolIfNecessary();
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
RazorComment();
@@ -183,7 +183,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
AcceptWhile(IsSpacingToken(includeNewLines: false));
AcceptAndMoveNext();
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
}
else
@@ -218,7 +218,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void OtherParserBlock()
{
AddMarkerSymbolIfNecessary();
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
using (PushSpanConfig())
{
@@ -251,7 +251,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
if (IsBangEscape(lookahead: 0))
{
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
// Accept the parser escape character '!'.
Assert(HtmlSymbolType.Bang);
@@ -259,7 +259,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Setup the metacode span that we will be outputing.
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode, AcceptedCharacters.None);
+ Output(SpanKindInternal.MetaCode, AcceptedCharactersInternal.None);
}
}
@@ -272,7 +272,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
using (PushSpanConfig(DefaultMarkupSpan))
{
- using (Context.Builder.StartBlock(BlockKind.Markup))
+ using (Context.Builder.StartBlock(BlockKindInternal.Markup))
{
Span.Start = CurrentLocation;
@@ -291,19 +291,19 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
else if (CurrentSymbol.Type == HtmlSymbolType.Transition)
{
// "@" => Explicit Tag/Single Line Block OR Template
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
// Definitely have a transition span
Assert(HtmlSymbolType.Transition);
AcceptAndMoveNext();
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Transition);
+ Output(SpanKindInternal.Transition);
if (At(HtmlSymbolType.Transition))
{
Span.ChunkGenerator = SpanChunkGenerator.Null;
AcceptAndMoveNext();
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
}
AfterTransition();
}
@@ -314,7 +314,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
LegacyResources.ParseError_MarkupBlock_Must_Start_With_Tag,
CurrentSymbol.Content.Length);
}
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
}
}
@@ -322,7 +322,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
private void DefaultMarkupSpan(SpanBuilder span)
{
span.ChunkGenerator = new MarkupChunkGenerator();
- span.EditHandler = new SpanEditHandler(Language.TokenizeString, AcceptedCharacters.Any);
+ span.EditHandler = new SpanEditHandler(Language.TokenizeString, AcceptedCharactersInternal.Any);
}
private void AfterTransition()
@@ -336,7 +336,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// The first part (left) is added to this span and we return a MetaCode span
Accept(split.Item1);
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.MetaCode);
+ Output(SpanKindInternal.MetaCode);
if (split.Item2 != null)
{
Accept(split.Item2);
@@ -361,11 +361,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (!EndOfFile && CurrentSymbol.Type == HtmlSymbolType.NewLine)
{
AcceptAndMoveNext();
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
PutCurrentBack();
Context.WhiteSpaceIsSignificantToAncestorBlock = old;
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
private void TagBlock(Stack> tags)
@@ -377,7 +377,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
SkipToAndParseCode(HtmlSymbolType.OpenAngle);
// Output everything prior to the OpenAngle into a markup span
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
// Do not want to start a new tag block if we're at the end of the file.
IDisposable tagBlockWrapper = null;
@@ -388,7 +388,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (!EndOfFile && !atSpecialTag)
{
// Start a Block tag. This is used to wrap things like or etc.
- tagBlockWrapper = Context.Builder.StartBlock(BlockKind.Tag);
+ tagBlockWrapper = Context.Builder.StartBlock(BlockKindInternal.Tag);
}
if (EndOfFile)
@@ -416,11 +416,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (complete)
{
// Completed tags have no accepted characters inside of blocks.
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
// Output the contents of the tag into its own markup span.
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
finally
{
@@ -498,7 +498,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
AcceptAndMoveNext();
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
while (!EndOfFile)
{
SkipToAndParseCode(HtmlSymbolType.DoubleHyphen);
@@ -638,17 +638,17 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
LegacyResources.ParseError_TextTagCannotContainAttributes,
length: 4 /* text */);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.Any;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.Any;
RecoverTextTag();
}
else
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
Span.ChunkGenerator = SpanChunkGenerator.Null;
- CompleteTagBlockWithSpan(tagBlockWrapper, Span.EditHandler.AcceptedCharacters, SpanKind.Transition);
+ CompleteTagBlockWithSpan(tagBlockWrapper, Span.EditHandler.AcceptedCharacters, SpanKindInternal.Transition);
return seenCloseAngle;
}
@@ -765,13 +765,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Output anything prior to the attribute, in most cases this will be the tag name:
// |. If in-between other attributes this will noop or output malformed attribute
// content (if the previous attribute was malformed).
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
- using (Context.Builder.StartBlock(BlockKind.Markup))
+ using (Context.Builder.StartBlock(BlockKindInternal.Markup))
{
Accept(whitespace);
Accept(name);
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
return;
@@ -779,10 +779,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Not a minimized attribute, parse as if it were well-formed (if attribute turns out to be malformed we
// will go into recovery).
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
// Start a new markup block for the attribute
- using (Context.Builder.StartBlock(BlockKind.Markup))
+ using (Context.Builder.StartBlock(BlockKindInternal.Markup))
{
AttributePrefix(whitespace, name, whitespaceAfterAttributeName);
}
@@ -828,7 +828,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (attributeCanBeConditional)
{
Span.ChunkGenerator = SpanChunkGenerator.Null; // The block chunk generator will render the prefix
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
// Read the attribute value only if the value is quoted
// or if there is no whitespace between '=' and the unquoted value.
@@ -853,7 +853,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
// Again, block chunk generator will render the suffix
Span.ChunkGenerator = SpanChunkGenerator.Null;
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
// Create the block chunk generator
@@ -863,7 +863,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
else
{
// Output the attribute name, the equals and optional quote. Ex: foo="
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
if (quote == HtmlSymbolType.Unknown && whitespaceAfterEquals.Any())
{
@@ -874,13 +874,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
SkipToAndParseCode(sym => IsEndOfAttributeValue(quote, sym));
// Output the attribute value (will include everything in-between the attribute's quotes).
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
if (quote != HtmlSymbolType.Unknown)
{
Optional(quote);
}
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
}
@@ -894,7 +894,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (NextIs(HtmlSymbolType.Transition))
{
// Wrapping this in a block so that the ConditionalAttributeCollapser doesn't rewrite it.
- using (Context.Builder.StartBlock(BlockKind.Markup))
+ using (Context.Builder.StartBlock(BlockKindInternal.Markup))
{
Accept(prefix);
@@ -903,11 +903,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new LocationTagged(string.Concat(prefix.Select(s => s.Content)), prefixStart),
new LocationTagged(CurrentSymbol.Content, CurrentStart));
AcceptAndMoveNext();
- Output(SpanKind.Markup, AcceptedCharacters.None);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.None);
Span.ChunkGenerator = SpanChunkGenerator.Null;
AcceptAndMoveNext();
- Output(SpanKind.Markup, AcceptedCharacters.None);
+ Output(SpanKindInternal.Markup, AcceptedCharactersInternal.None);
}
}
else
@@ -920,7 +920,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Span.ChunkGenerator = SpanChunkGenerator.Null;
// Dynamic value, start a new block and set the chunk generator
- using (Context.Builder.StartBlock(BlockKind.Markup))
+ using (Context.Builder.StartBlock(BlockKindInternal.Markup))
{
Context.Builder.CurrentBlock.ChunkGenerator =
new DynamicAttributeBlockChunkGenerator(
@@ -952,7 +952,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new LocationTagged(string.Concat(prefix.Select(s => s.Content)), prefixStart),
new LocationTagged(string.Concat(value.Select(s => s.Content)), valueStart));
}
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
}
private bool IsEndOfAttributeValue(HtmlSymbolType quote, HtmlSymbol sym)
@@ -1063,7 +1063,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// tags are treated like any other escaped HTML start tag.
string.Equals(tag.Item1.Content, SyntaxConstants.TextTagName, StringComparison.OrdinalIgnoreCase))
{
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
Span.ChunkGenerator = SpanChunkGenerator.Null;
Accept(_bufferedOpenAngle);
@@ -1098,7 +1098,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
else
{
Accept(tokens);
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
if (!empty)
@@ -1106,7 +1106,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
tags.Push(tag);
}
- CompleteTagBlockWithSpan(tagBlockWrapper, Span.EditHandler.AcceptedCharacters, SpanKind.Transition);
+ CompleteTagBlockWithSpan(tagBlockWrapper, Span.EditHandler.AcceptedCharacters, SpanKindInternal.Transition);
return true;
}
@@ -1154,7 +1154,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
var tagName = tag.Item1.Content.Trim();
if (VoidElements.Contains(tagName))
{
- CompleteTagBlockWithSpan(tagBlockWrapper, AcceptedCharacters.None, SpanKind.Markup);
+ CompleteTagBlockWithSpan(tagBlockWrapper, AcceptedCharactersInternal.None, SpanKindInternal.Markup);
// Technically, void elements like "meta" are not allowed to have end tags. Just in case they do,
// we need to look ahead at the next set of tokens. If we see "<", "/", tag name, accept it and the ">" following it
@@ -1176,9 +1176,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
// Accept up to here
Accept(whiteSpace);
- Output(SpanKind.Markup); // Output the whitespace
+ Output(SpanKindInternal.Markup); // Output the whitespace
- using (Context.Builder.StartBlock(BlockKind.Tag))
+ using (Context.Builder.StartBlock(BlockKindInternal.Tag))
{
Accept(openAngle);
Accept(solidus);
@@ -1191,11 +1191,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
if (complete)
{
- Span.EditHandler.AcceptedCharacters = AcceptedCharacters.None;
+ Span.EditHandler.AcceptedCharacters = AcceptedCharactersInternal.None;
}
// Output the closing void element
- Output(SpanKind.Markup);
+ Output(SpanKindInternal.Markup);
return complete;
}
@@ -1210,9 +1210,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
if (!CurrentScriptTagExpectsHtml())
{
- CompleteTagBlockWithSpan(tagBlockWrapper, AcceptedCharacters.None, SpanKind.Markup);
+ CompleteTagBlockWithSpan(tagBlockWrapper, AcceptedCharactersInternal.None, SpanKindInternal.Markup);
- SkipToEndScriptAndParseCode(endTagAcceptedCharacters: AcceptedCharacters.None);
+ SkipToEndScriptAndParseCode(endTagAcceptedCharacters: AcceptedCharactersInternal.None);
}
else
{
@@ -1230,7 +1230,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
return seenClose;
}
- private void SkipToEndScriptAndParseCode(AcceptedCharacters endTagAcceptedCharacters = AcceptedCharacters.Any)
+ private void SkipToEndScriptAndParseCode(AcceptedCharactersInternal endTagAcceptedCharacters = AcceptedCharactersInternal.Any)
{
// Special case for ")),
Factory.Markup(" ")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -433,22 +433,22 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "foo", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "foo", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup(" I really want to render a close brace, so here I go: "),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.MetaCode("(").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("(").Accepts(AcceptedCharactersInternal.None),
Factory.Code("\"}\"").AsExpression(),
- Factory.MetaCode(")").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode(")").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup(" ")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -463,20 +463,20 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "Foo", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "Foo", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup(Environment.NewLine),
new StatementBlock(
Factory.CodeTransition(),
Factory.Code($"if(true) {{{Environment.NewLine}}}{Environment.NewLine}").AsStatement()
)),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -490,20 +490,20 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "Foo", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "Foo", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup(Environment.NewLine),
new StatementBlock(
Factory.CodeTransition(),
Factory.Code($"if(true) {{{Environment.NewLine}}}").AsStatement()
)),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -515,16 +515,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "foo", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "foo", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup("something")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -536,16 +536,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup("")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -559,16 +559,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup("")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -581,19 +581,19 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup(Environment.NewLine),
new MarkupTagBlock(
Factory.Markup(" \" '-->")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -606,16 +606,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
Factory.CodeTransition(),
- Factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
Factory.Markup(" xml bleh ?>")),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()));
}
@@ -633,13 +633,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
factory.CodeTransition(),
- factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
new MarkupTagBlock(
factory.Markup("(" foo='", 17, 0, 17), new LocationTagged("'", 25, 0, 25)),
factory.Markup(" foo='").With(SpanChunkGenerator.Null),
new MarkupBlock(
- factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 23, 0, 23), new LocationTagged("@", 23, 0, 23))).Accepts(AcceptedCharacters.None),
- factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharacters.None)),
+ factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 23, 0, 23), new LocationTagged("@", 23, 0, 23))).Accepts(AcceptedCharactersInternal.None),
+ factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)),
factory.Markup("'").With(SpanChunkGenerator.Null)),
factory.Markup(" />"))),
- factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
factory.EmptyHtml())
},
{
@@ -660,13 +660,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
factory.EmptyHtml(),
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor),
factory.CodeTransition(),
- factory.MetaCode("section").Accepts(AcceptedCharacters.None),
- factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- factory.Span(SpanKind.Code, "s", CSharpSymbolType.Identifier)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ factory.MetaCode("section").Accepts(AcceptedCharactersInternal.None),
+ factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ factory.Span(SpanKindInternal.Code, "s", CSharpSymbolType.Identifier)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.SectionDirectiveDescriptor.Tokens.First())),
- factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
new MarkupBlock(
new MarkupTagBlock(
factory.Markup("(" ", 36, 0, 36), new LocationTagged("@", 37, 0, 37))).Accepts(AcceptedCharacters.None),
- factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharacters.None)),
+ factory.Markup(" @").With(new LiteralAttributeChunkGenerator(new LocationTagged(" ", 36, 0, 36), new LocationTagged("@", 37, 0, 37))).Accepts(AcceptedCharactersInternal.None),
+ factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)),
factory.Markup("'").With(SpanChunkGenerator.Null)),
factory.Markup(" />"))),
- factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
factory.EmptyHtml())
},
};
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpSpecialBlockTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpSpecialBlockTest.cs
index 1e157145d1..7e95b373f6 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpSpecialBlockTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpSpecialBlockTest.cs
@@ -14,7 +14,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("inherits",
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.InheritsDirectiveDescriptor),
- Factory.MetaCode("inherits").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("inherits").Accepts(AcceptedCharactersInternal.None)),
new RazorError(
LegacyResources.FormatUnexpectedEOFAfterDirective(CSharpCodeParser.InheritsDirectiveDescriptor.Name, "type"),
new SourceLocation(8, 0, 8), 1));
@@ -25,10 +25,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("inherits Foo.Bar, string, int>.Baz",
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.InheritsDirectiveDescriptor),
- Factory.MetaCode("inherits").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace),
- Factory.Span(SpanKind.Code, "Foo.Bar, string, int>.Baz", markup: false)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.MetaCode("inherits").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace),
+ Factory.Span(SpanKindInternal.Code, "Foo.Bar, string, int>.Baz", markup: false)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
.With(new DirectiveTokenChunkGenerator(CSharpCodeParser.InheritsDirectiveDescriptor.Tokens.First()))));
}
@@ -37,8 +37,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("inherits " + Environment.NewLine + "foo",
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.InheritsDirectiveDescriptor),
- Factory.MetaCode("inherits").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.WhiteSpace)),
+ Factory.MetaCode("inherits").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Code, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.WhiteSpace)),
new RazorError(LegacyResources.FormatDirectiveExpectsTypeName(CSharpCodeParser.InheritsDirectiveDescriptor.Name), 24, 0, 24, Environment.NewLine.Length));
}
@@ -47,11 +47,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ using Foo.Bar.Baz; var foo = bar; }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" using Foo.Bar.Baz; var foo = bar; ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
),
new RazorError(
LegacyResources.ParseError_NamespaceImportAndTypeAlias_Cannot_Exist_Within_CodeBlock,
@@ -64,11 +64,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ using Foo = Bar.Baz; var foo = bar; }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" using Foo = Bar.Baz; var foo = bar; ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
),
new RazorError(
LegacyResources.ParseError_NamespaceImportAndTypeAlias_Cannot_Exist_Within_CodeBlock,
@@ -81,11 +81,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ functions Foo; }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" functions Foo; ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -96,11 +96,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " List photos = gallery.Photo.ToList();" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code($"{Environment.NewLine} List photos = gallery.Photo.ToList();{Environment.NewLine}")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -113,11 +113,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Act/Assert
ParseBlockTest("{" + code + "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(code)
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -130,9 +130,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
// Act/Assert
ParseBlockTest("(" + code + ")",
new ExpressionBlock(
- Factory.MetaCode("(").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("(").Accepts(AcceptedCharactersInternal.None),
Factory.Code(code).AsExpression(),
- Factory.MetaCode(")").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode(")").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -142,11 +142,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
const string code = " foo(); \"bar}baz\" ";
ParseBlockTest("functions {" + code + "} zoop",
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.FunctionsDirectiveDescriptor),
- Factory.MetaCode("functions").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("functions").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith(null, atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
Factory.Code(code).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -154,9 +154,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("functions { { { { { } zoop",
new DirectiveBlock(new DirectiveChunkGenerator(CSharpCodeParser.FunctionsDirectiveDescriptor),
- Factory.MetaCode("functions").Accepts(AcceptedCharacters.None),
- Factory.Span(SpanKind.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharacters.AllWhiteSpace),
- Factory.MetaCode("{").AutoCompleteWith("}", atEndOfSpan: true).Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("functions").Accepts(AcceptedCharactersInternal.None),
+ Factory.Span(SpanKindInternal.Markup, " ", CSharpSymbolType.WhiteSpace).Accepts(AcceptedCharactersInternal.AllWhiteSpace),
+ Factory.MetaCode("{").AutoCompleteWith("}", atEndOfSpan: true).Accepts(AcceptedCharactersInternal.None),
Factory.Code(" { { { { } zoop").AsStatement()),
new RazorError(
LegacyResources.FormatParseError_Expected_EndOfBlock_Before_EOF("functions", "}", "{"),
@@ -171,7 +171,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new ExpressionBlock(
Factory.Code("Functions")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)));
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)));
}
[Fact]
@@ -182,7 +182,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.EmptyCSharp()
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
new RazorError(
LegacyResources.FormatParseError_Unexpected_Character_At_Start_Of_CodeBlock_CS("/"),
new SourceLocation(1, 0, 1),
@@ -201,11 +201,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup("\t"),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("A real tag!"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)),
Factory.Code("}").AsStatement()
));
}
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpStatementTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpStatementTest.cs
index 4bc87575eb..490d252688 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpStatementTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpStatementTest.cs
@@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("for(int i = 0; i++; i < length) { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -37,7 +37,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foreach(var foo in bar) { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -49,7 +49,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("while(true) { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -61,7 +61,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("switch(foo) { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -73,7 +73,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("lock(baz) { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -107,7 +107,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("if(true) { foo(); } else { foo(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -157,7 +157,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
factory
.Code("try { A(); } catch(Exception) when (true) { B(); } finally { C(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None))
+ .Accepts(AcceptedCharactersInternal.None))
},
{
"@try { A(); } catch(Exception) when (true) { B(); } catch(IOException) when (false) { C(); }",
@@ -188,12 +188,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
"@{try { someMethod(); } catch(Exception) when (true) { handleIO(); }}",
new StatementBlock(
factory.CodeTransition(),
- factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
factory
.Code("try { someMethod(); } catch(Exception) when (true) { handleIO(); }")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- factory.MetaCode("}").Accepts(AcceptedCharacters.None))
+ factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None))
},
// Partial exception filter data
@@ -308,7 +308,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("try { foo(); } finally { Dispose(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -322,7 +322,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
factory.CodeTransition(),
factory.Code(code)
.AsNamespaceImport(import)
- .Accepts(AcceptedCharacters.AnyExceptNewline));
+ .Accepts(AcceptedCharactersInternal.AnyExceptNewline));
// document, expectedResult
return new TheoryData
@@ -369,7 +369,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("using(var foo = new Foo()) { foo.Bar(); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -381,7 +381,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("using StringDictionary = System.Collections.Generic.Dictionary")
.AsNamespaceImport(" StringDictionary = System.Collections.Generic.Dictionary")
- .Accepts(AcceptedCharacters.AnyExceptNewline)
+ .Accepts(AcceptedCharactersInternal.AnyExceptNewline)
));
}
@@ -393,7 +393,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("using System.Text.Encoding.ASCIIEncoding")
.AsNamespaceImport(" System.Text.Encoding.ASCIIEncoding")
- .Accepts(AcceptedCharacters.AnyExceptNewline)
+ .Accepts(AcceptedCharactersInternal.AnyExceptNewline)
));
}
@@ -405,7 +405,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("do { foo(); } while(true);")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -417,7 +417,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("is")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
));
}
}
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpTemplateTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpTemplateTest.cs
index 48b51260a4..775f2a3c4f 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpTemplateTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpTemplateTest.cs
@@ -16,16 +16,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.MarkupTransition(),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo #"),
new ExpressionBlock(
Factory.CodeTransition(),
Factory.Code("item")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None))
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None))
)
);
}
@@ -38,7 +38,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.MarkupTransition(),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo #"),
new ExpressionBlock(
Factory.CodeTransition(),
@@ -48,24 +48,24 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.MarkupTransition(),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml(),
new ExpressionBlock(
Factory.CodeTransition(),
Factory.Code("item")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
)
),
Factory.Code(")")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
)
);
}
@@ -76,7 +76,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
ParseBlockTest("{ var foo = @: bar" + Environment.NewLine
+ "; }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" var foo = ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -86,11 +86,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup(" bar" + Environment.NewLine)
.With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString))
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
)
),
Factory.Code("; ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -100,7 +100,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
ParseBlockTest("{i@: bar" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code("i")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -110,11 +110,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup(" bar" + Environment.NewLine)
.With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString))
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
)
),
Factory.EmptyCSharp().AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -123,11 +123,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("(Html.Repeat(10," + TestTemplateCode + "))",
new ExpressionBlock(
- Factory.MetaCode("(").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("(").Accepts(AcceptedCharactersInternal.None),
Factory.Code("Html.Repeat(10, ").AsExpression(),
TestTemplate(),
Factory.Code(")").AsExpression(),
- Factory.MetaCode(")").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode(")").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -141,7 +141,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
TestTemplate(),
Factory.Code(")")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
));
}
@@ -157,7 +157,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords),
TestTemplate(),
Factory.Code(")")
- .AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharacters.NonWhiteSpace)
+ .AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
));
}
@@ -171,7 +171,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
TestNestedTemplate(),
Factory.Code(")")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
GetNestedTemplateError(42));
}
@@ -185,7 +185,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
TestTemplate(),
Factory.Code("); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -200,7 +200,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
TestTemplate(),
Factory.Code("); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -214,7 +214,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
TestNestedTemplate(),
Factory.Code("); }")
.AsStatement()
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
),
GetNestedTemplateError(74));
}
@@ -224,13 +224,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ var foo = bar; Html.ExecuteTemplate(foo," + TestTemplateCode + "); }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" var foo = bar; Html.ExecuteTemplate(foo, ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
TestTemplate(),
Factory.Code("); ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -239,7 +239,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ var foo = bar; Html.ExecuteTemplate(foo," + TestTemplateCode + "," + TestTemplateCode + "); }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" var foo = bar; Html.ExecuteTemplate(foo, ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -247,7 +247,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Code(", ").AsStatement(),
TestTemplate(),
Factory.Code("); ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -256,13 +256,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ var foo = bar; Html.ExecuteTemplate(foo," + TestNestedTemplateCode + "); }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" var foo = bar; Html.ExecuteTemplate(foo, ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
TestNestedTemplate(),
Factory.Code("); ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
),
GetNestedTemplateError(69));
}
@@ -283,30 +283,30 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new AttributeBlockChunkGenerator("foo", new LocationTagged(" foo='", 46, 0, 46), new LocationTagged("'", 54, 0, 54)),
Factory.Markup(" foo='").With(SpanChunkGenerator.Null),
new MarkupBlock(
- Factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 52, 0, 52), new LocationTagged("@", 52, 0, 52))).Accepts(AcceptedCharacters.None),
- Factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharacters.None)),
+ Factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 52, 0, 52), new LocationTagged("@", 52, 0, 52))).Accepts(AcceptedCharactersInternal.None),
+ Factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(">").Accepts(AcceptedCharacters.None)),
+ Factory.Markup(">").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo #"),
new ExpressionBlock(
Factory.CodeTransition(),
Factory.Code("item")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
)
);
var expected = new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" var foo = bar; Html.ExecuteTemplate(foo, ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
testTemplateWithDoubleTransition,
Factory.Code("); ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None));
// Act & Assert
ParseBlockTest("{ var foo = bar; Html.ExecuteTemplate(foo," + testTemplateWithDoubleTransitionCode + "); }", expected);
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpToMarkupSwitchTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpToMarkupSwitchTest.cs
index ec39c5faea..c1dbed5b11 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpToMarkupSwitchTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpToMarkupSwitchTest.cs
@@ -13,11 +13,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ List< }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" List< ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -27,20 +27,20 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new ExpressionBlock(
Factory.Code("Foo( ")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.Any),
+ .Accepts(AcceptedCharactersInternal.Any),
new TemplateBlock(
new MarkupBlock(
Factory.MarkupTransition(),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
)
),
Factory.Code(" )")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
), designTime: true);
}
@@ -57,12 +57,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Foo
" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
)
),
Factory.Code(")")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
), designTime: true);
}
@@ -73,19 +73,19 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " Foo
" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine + " ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
),
Factory.Code(" " + Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
), designTime: true);
}
@@ -96,20 +96,20 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " @Foo
" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine + " ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
Factory.MarkupTransition(),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None))
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))
),
Factory.Code(" " + Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
), true,
new RazorError(
LegacyResources.ParseError_AtInCode_Must_Be_Followed_By_Colon_Paren_Or_Identifier_Start,
@@ -124,7 +124,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " @:Foo
" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine + " ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -132,10 +132,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Foo
" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.EmptyCSharp().AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
), designTime: true);
}
@@ -156,19 +156,19 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
.With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString)),
new StatementBlock(
Factory.CodeTransition(),
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.EmptyCSharp()
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
),
Factory.Markup(Environment.NewLine)
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
)
),
Factory.Code(")")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)
));
}
@@ -189,27 +189,27 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Baz" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
new MarkupBlock(
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
new MarkupBlock(
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)),
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)),
new MarkupBlock(
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Bar" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
- Factory.Code("}").AsStatement().Accepts(AcceptedCharacters.None)
+ Factory.Code("}").AsStatement().Accepts(AcceptedCharactersInternal.None)
));
}
@@ -232,23 +232,23 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup($"{Environment.NewLine} Foo{Environment.NewLine}"),
new ExpressionBlock(
Factory.Code(" ").AsStatement(),
Factory.CodeTransition(),
- Factory.Code("bar").AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.Code("bar").AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
Factory.Markup(Environment.NewLine + " "),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
new MarkupBlock(
Factory.Markup(" "),
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
- Factory.Markup("Hello!" + Environment.NewLine).With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ Factory.Markup("Hello!" + Environment.NewLine).With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code($" var biz = boz;{Environment.NewLine}}}").AsStatement()));
}
@@ -262,33 +262,33 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Bar"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} else if(bar) {").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Baz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} else {").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Boz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
- Factory.Code("}").AsStatement().Accepts(AcceptedCharacters.None)
+ Factory.Code("}").AsStatement().Accepts(AcceptedCharactersInternal.None)
));
}
@@ -297,41 +297,41 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ if(foo) { Bar
} else if(bar) { Baz
} else { Boz
} }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" if(foo) {")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Bar"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} else if(bar) {").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Baz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} else {").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Boz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)
));
}
@@ -359,21 +359,21 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code($" break;{Environment.NewLine} case 1:{Environment.NewLine}").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Bar"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code(
$" return;{Environment.NewLine} case 2:{Environment.NewLine}" +
@@ -381,32 +381,32 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Baz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Boz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code($" }}{Environment.NewLine} default:{Environment.NewLine}").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Biz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
- Factory.Code("}").AsStatement().Accepts(AcceptedCharacters.None)));
+ Factory.Code("}").AsStatement().Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -429,28 +429,28 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " Biz
" + Environment.NewLine
+ "} }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code($" switch(foo) {{{Environment.NewLine} case 0:{Environment.NewLine}")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code($" break;{Environment.NewLine} case 1:{Environment.NewLine}").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Bar"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code(
$" return;{Environment.NewLine} case 2:{Environment.NewLine}" +
@@ -458,33 +458,33 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Baz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Boz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code($" }}{Environment.NewLine} default:{Environment.NewLine}").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Biz"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -496,13 +496,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
- Factory.Code("}").AsStatement().Accepts(AcceptedCharacters.None)
+ Factory.Code("}").AsStatement().Accepts(AcceptedCharactersInternal.None)
));
}
@@ -511,21 +511,21 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ for(int i = 0; i < 10; i++) { Foo
} }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" for(int i = 0; i < 10; i++) {")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("Foo"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(" ").Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)
),
Factory.Code("} ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -541,7 +541,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Bar" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code("}").AsStatement()));
}
@@ -559,7 +559,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup(":Sometext" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code("}").AsStatement()));
}
@@ -578,7 +578,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("::Sometext" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code("}").AsStatement()));
}
@@ -590,7 +590,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
ParseBlockTest("{ if(foo) { @:Bar" + Environment.NewLine
+ "} } zoop",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" if(foo) {")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -598,11 +598,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Markup(" "),
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
- Factory.Markup("Bar" + Environment.NewLine).Accepts(AcceptedCharacters.None)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ Factory.Markup("Bar" + Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code("} ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact(Skip = "Fails due to https://github.com/aspnet/Razor/issues/897")]
@@ -613,10 +613,10 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Code("if (i > 0) {").AsStatement(),
new MarkupBlock(
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None)),
- Factory.Markup(";").Accepts(AcceptedCharacters.None),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(";").Accepts(AcceptedCharactersInternal.None),
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None))),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None))),
Factory.Code(" }").AsStatement()));
}
@@ -625,18 +625,18 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{ if (i > 0) { ; } }",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(" if (i > 0) {")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new MarkupBlock(
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None)),
- Factory.Markup(";").Accepts(AcceptedCharacters.None),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(";").Accepts(AcceptedCharactersInternal.None),
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None))),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None))),
Factory.Code(" } ").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact(Skip = "Fails due to https://github.com/aspnet/Razor/issues/897")]
@@ -654,7 +654,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " }" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code($"{Environment.NewLine} if(true) {{{Environment.NewLine}")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
@@ -663,31 +663,31 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.MarkupTransition(),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup("Single Line Markup" + Environment.NewLine)
- .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharacters.None))
+ .With(new SpanEditHandler(CSharpLanguageCharacteristics.Instance.TokenizeString, AcceptedCharactersInternal.None))
),
Factory.Code($" }}{Environment.NewLine} foreach (var p in Enumerable.Range(1, 10)) {{{Environment.NewLine}").AsStatement(),
new MarkupBlock(
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None)),
- Factory.Markup("The number is ").Accepts(AcceptedCharacters.None),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup("The number is ").Accepts(AcceptedCharactersInternal.None),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.Code("p").AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.Code("p").AsImplicitExpression(CSharpCodeParser.DefaultKeywords).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
new MarkupTagBlock(
- Factory.MarkupTransition("").Accepts(AcceptedCharacters.None))),
+ Factory.MarkupTransition("").Accepts(AcceptedCharactersInternal.None))),
Factory.Code($"{Environment.NewLine} }}{Environment.NewLine} if(!false) {{{Environment.NewLine}").AsStatement(),
new MarkupBlock(
Factory.Markup(" "),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None)),
+ Factory.Markup("
").Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("A real tag!"),
new MarkupTagBlock(
- Factory.Markup("
").Accepts(AcceptedCharacters.None)),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None)),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)
),
Factory.Code(" }" + Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
}
}
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpVerbatimBlockTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpVerbatimBlockTest.cs
index b8d0863e94..dde4e6e58c 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpVerbatimBlockTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpVerbatimBlockTest.cs
@@ -17,12 +17,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new StatementBlock(
Factory.CodeTransition(),
Factory.MetaCode("{")
- .Accepts(AcceptedCharacters.None),
+ .Accepts(AcceptedCharactersInternal.None),
Factory.Code(" foo(); ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
Factory.MetaCode("}")
- .Accepts(AcceptedCharacters.None)
+ .Accepts(AcceptedCharactersInternal.None)
));
}
@@ -31,16 +31,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{@}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.EmptyCSharp()
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
Factory.EmptyCSharp().AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
designTime: true,
expectedErrors: new[]
{
@@ -56,16 +56,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
{
ParseBlockTest("{@.}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.EmptyCSharp()
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
Factory.Code(".").AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
designTime: true,
expectedErrors: new[]
{
@@ -83,16 +83,16 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ " @" + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine + " ")
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharacters.NonWhiteSpace)
+ Factory.EmptyCSharp().AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharactersInternal.NonWhiteSpace)
),
Factory.Code(Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
/* designTimeParser */ true,
new RazorError(
LegacyResources.ParseError_Unexpected_WhiteSpace_At_Start_Of_CodeBlock_CS,
@@ -106,15 +106,15 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
ParseBlockTest("{@foo." + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.EmptyCSharp()
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.Code("foo.").AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharacters.NonWhiteSpace)),
+ Factory.Code("foo.").AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
Factory.Code(Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)));
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)));
}
[Fact]
@@ -123,15 +123,15 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
ParseBlockTest("{@foo." + Environment.NewLine
+ "}",
new StatementBlock(
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.EmptyCSharp()
.AsStatement()
.AutoCompleteWith(autoCompleteString: null),
new ExpressionBlock(
Factory.CodeTransition(),
- Factory.Code("foo.").AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharacters.NonWhiteSpace)),
+ Factory.Code("foo.").AsImplicitExpression(KeywordSet, acceptTrailingDot: true).Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
Factory.Code(Environment.NewLine).AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
designTime: true);
}
}
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpWhitespaceHandlingTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpWhitespaceHandlingTest.cs
index f83c8b0e3f..d33ad7d8c7 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpWhitespaceHandlingTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CSharpWhitespaceHandlingTest.cs
@@ -15,20 +15,20 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
+ "}",
new MarkupBlock(
Factory.MarkupTransition()
- .Accepts(AcceptedCharacters.None),
+ .Accepts(AcceptedCharactersInternal.None),
Factory.MetaMarkup(":", HtmlSymbolType.Colon),
Factory.Markup(" ")
.With(new SpanEditHandler(
CSharpLanguageCharacteristics.Instance.TokenizeString,
- AcceptedCharacters.Any)),
+ AcceptedCharactersInternal.Any)),
new StatementBlock(
Factory.CodeTransition()
- .Accepts(AcceptedCharacters.None),
+ .Accepts(AcceptedCharactersInternal.None),
Factory.Code("if (true) { }")
.AsStatement()
),
Factory.Markup(Environment.NewLine)
- .Accepts(AcceptedCharacters.None)));
+ .Accepts(AcceptedCharactersInternal.None)));
}
}
}
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CodeParserTestBase.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CodeParserTestBase.cs
index d90cfe3574..8d04c156a0 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CodeParserTestBase.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/CodeParserTestBase.cs
@@ -16,51 +16,51 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
internal void ImplicitExpressionTest(string input, params RazorError[] errors)
{
- ImplicitExpressionTest(input, AcceptedCharacters.NonWhiteSpace, errors);
+ ImplicitExpressionTest(input, AcceptedCharactersInternal.NonWhiteSpace, errors);
}
- internal void ImplicitExpressionTest(string input, AcceptedCharacters acceptedCharacters, params RazorError[] errors)
+ internal void ImplicitExpressionTest(string input, AcceptedCharactersInternal acceptedCharacters, params RazorError[] errors)
{
ImplicitExpressionTest(input, input, acceptedCharacters, errors);
}
internal void ImplicitExpressionTest(string input, string expected, params RazorError[] errors)
{
- ImplicitExpressionTest(input, expected, AcceptedCharacters.NonWhiteSpace, errors);
+ ImplicitExpressionTest(input, expected, AcceptedCharactersInternal.NonWhiteSpace, errors);
}
- internal override void SingleSpanBlockTest(string document, BlockKind blockKind, SpanKind spanType, AcceptedCharacters acceptedCharacters = AcceptedCharacters.Any)
+ internal override void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters = AcceptedCharactersInternal.Any)
{
SingleSpanBlockTest(document, blockKind, spanType, acceptedCharacters, expectedError: null);
}
- internal override void SingleSpanBlockTest(string document, string spanContent, BlockKind blockKind, SpanKind spanType, AcceptedCharacters acceptedCharacters = AcceptedCharacters.Any)
+ 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 override void SingleSpanBlockTest(string document, BlockKind blockKind, SpanKind spanType, params RazorError[] expectedError)
+ 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, BlockKind blockKind, SpanKind spanType, params RazorError[] expectedErrors)
+ internal override void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, params RazorError[] expectedErrors)
{
- SingleSpanBlockTest(document, spanContent, blockKind, spanType, AcceptedCharacters.Any, expectedErrors ?? new RazorError[0]);
+ SingleSpanBlockTest(document, spanContent, blockKind, spanType, AcceptedCharactersInternal.Any, expectedErrors ?? new RazorError[0]);
}
- internal override void SingleSpanBlockTest(string document, BlockKind blockKind, SpanKind spanType, AcceptedCharacters acceptedCharacters, params RazorError[] expectedError)
+ internal override void SingleSpanBlockTest(string document, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorError[] expectedError)
{
SingleSpanBlockTest(document, document, blockKind, spanType, acceptedCharacters, expectedError);
}
- internal override void SingleSpanBlockTest(string document, string spanContent, BlockKind blockKind, SpanKind spanType, AcceptedCharacters acceptedCharacters, params RazorError[] expectedErrors)
+ internal override void SingleSpanBlockTest(string document, string spanContent, BlockKindInternal blockKind, SpanKindInternal spanType, AcceptedCharactersInternal acceptedCharacters, params RazorError[] expectedErrors)
{
var b = CreateSimpleBlockAndSpan(spanContent, blockKind, spanType, acceptedCharacters);
ParseBlockTest(document, b, expectedErrors ?? new RazorError[0]);
}
- internal void ImplicitExpressionTest(string input, string expected, AcceptedCharacters acceptedCharacters, params RazorError[] errors)
+ internal void ImplicitExpressionTest(string input, string expected, AcceptedCharactersInternal acceptedCharacters, params RazorError[] errors)
{
var factory = CreateSpanFactory();
ParseBlockTest(SyntaxConstants.TransitionString + input,
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlAttributeTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlAttributeTest.cs
index 9558541edd..e074835fd1 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlAttributeTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlAttributeTest.cs
@@ -85,7 +85,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, valueLocation2),
value: new LocationTagged("Bar", valueLocation2))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Theory]
@@ -147,7 +147,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, valueLocation2),
value: new LocationTagged("Bar", valueLocation2))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Theory]
@@ -175,7 +175,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, valueLocation, 0, valueLocation),
value: new LocationTagged("Foo", valueLocation, 0, valueLocation))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -193,7 +193,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new LiteralAttributeChunkGenerator(
prefix: new LocationTagged(string.Empty, 9, 0, 9), value: new LocationTagged("Foo", 9, 0, 9))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -213,7 +213,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new LiteralAttributeChunkGenerator(
prefix: new LocationTagged(string.Empty, 16, 2, 1), value: new LocationTagged("Foo", 16, 2, 1))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -234,9 +234,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("Foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -252,7 +252,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Markup(" Bar").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(" ", 12, 0, 12), value: new LocationTagged("Bar", 13, 0, 13))),
Factory.Markup(" Baz").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(" ", 16, 0, 16), value: new LocationTagged("Baz", 17, 0, 17))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -268,7 +268,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Markup(" Bar").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(" ", 12, 0, 12), value: new LocationTagged("Bar", 13, 0, 13))),
Factory.Markup(" Baz").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(" ", 16, 0, 16), value: new LocationTagged("Baz", 17, 0, 17))),
Factory.Markup("\"").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -289,7 +289,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, 10, 1, 6),
value: new LocationTagged("Foo", 10, 1, 6))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -320,7 +320,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, 21, 2, 6),
value: new LocationTagged("Bar", 21, 2, 6))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -341,7 +341,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
prefix: new LocationTagged(string.Empty, 12, 1, 6),
value: new LocationTagged("Foo", 12, 1, 6))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -356,7 +356,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.Markup("Foo").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(string.Empty, 8, 0, 8), value: new LocationTagged("Foo", 8, 0, 8)))),
new MarkupBlock(Factory.Markup(" Bar")),
new MarkupBlock(Factory.Markup(" Baz")),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -373,9 +373,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -392,7 +392,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup(" bar").With(new LiteralAttributeChunkGenerator(new LocationTagged(" ", 13, 0, 13), new LocationTagged("bar", 14, 0, 14))),
new MarkupBlock(new DynamicAttributeBlockChunkGenerator(new LocationTagged(" ", 17, 0, 17), 18, 0, 18),
Factory.Markup(" ").With(SpanChunkGenerator.Null),
@@ -400,9 +400,9 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("baz")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -419,13 +419,13 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup(" ~/Foo/Bar")
.With(new LiteralAttributeChunkGenerator(
new LocationTagged(" ", 13, 0, 13),
new LocationTagged("~/Foo/Bar", 14, 0, 14))),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -442,8 +442,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)))),
- Factory.Markup(" />").Accepts(AcceptedCharacters.None))));
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)))),
+ Factory.Markup(" />").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -460,7 +460,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)))),
Factory.Markup(" />"))));
}
@@ -481,8 +481,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
new AttributeBlockChunkGenerator("foo", new LocationTagged(" foo='", 5, 0, 5), new LocationTagged("'", 13, 0, 13)),
Factory.Markup(" foo='").With(SpanChunkGenerator.Null),
new MarkupBlock(
- Factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 11, 0, 11), new LocationTagged("@", 11, 0, 11))).Accepts(AcceptedCharacters.None),
- Factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharacters.None)),
+ Factory.Markup("@").With(new LiteralAttributeChunkGenerator(new LocationTagged(string.Empty, 11, 0, 11), new LocationTagged("@", 11, 0, 11))).Accepts(AcceptedCharactersInternal.None),
+ Factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)),
Factory.Markup("'").With(SpanChunkGenerator.Null)),
Factory.Markup(" />"))));
}
@@ -572,11 +572,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
Factory.Markup("'")),
- Factory.Markup(">").Accepts(AcceptedCharacters.None)),
+ Factory.Markup(">").Accepts(AcceptedCharactersInternal.None)),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None))));
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -592,11 +592,11 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
Factory.Markup("'")),
- Factory.Markup(">").Accepts(AcceptedCharacters.None)),
+ Factory.Markup(">").Accepts(AcceptedCharactersInternal.None)),
new MarkupTagBlock(
- Factory.Markup("").Accepts(AcceptedCharacters.None))));
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None))));
}
[Fact]
@@ -612,7 +612,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace)),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace)),
Factory.Markup("'")),
Factory.Markup(">")),
new MarkupTagBlock(
@@ -632,7 +632,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.CodeTransition(),
Factory.Code("foo")
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
- .Accepts(AcceptedCharacters.NonWhiteSpace))),
+ .Accepts(AcceptedCharactersInternal.NonWhiteSpace))),
Factory.Markup(" >")),
new MarkupTagBlock(
Factory.Markup(""))));
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlBlockTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlBlockTest.cs
index e6ebf158b4..f0cf332e1f 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlBlockTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/HtmlBlockTest.cs
@@ -19,14 +19,14 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new StatementBlock(
Factory.CodeTransition(),
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine).AsStatement().AutoCompleteWith(null),
new MarkupBlock(
Factory.Markup(" "),
- Factory.Markup("").Accepts(AcceptedCharacters.None),
- Factory.Markup(Environment.NewLine).Accepts(AcceptedCharacters.None)),
+ Factory.Markup("").Accepts(AcceptedCharactersInternal.None),
+ Factory.Markup(Environment.NewLine).Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyCSharp().AsStatement(),
- Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
+ Factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)),
Factory.EmptyHtml()),
new RazorError[0]);
}
@@ -40,7 +40,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new StatementBlock(
Factory.CodeTransition(),
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine)
.AsStatement()
.AutoCompleteWith("}"),
@@ -64,7 +64,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
Factory.EmptyHtml(),
new StatementBlock(
Factory.CodeTransition(),
- Factory.MetaCode("{").Accepts(AcceptedCharacters.None),
+ Factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None),
Factory.Code(Environment.NewLine)
.AsStatement()
.AutoCompleteWith("}"),
@@ -74,7 +74,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
),
new MarkupBlock(
new MarkupTagBlock(
- Factory.Markup("