Add support for single line control flow statements in code blocks.
- This adds support for C# single line variations of: `if`, `for`, `foreach`, `do`, `while`, `lock` and `using`.
- Turns out the existing parser had 99% of the support for these scenarios already. Therefore, in this change set I went ahead and added exhaustive tests to verify things worked end-to-end.
- Added a restriction to single line markup to not allow markup in single line control flow statements. Updated resx to provide a better error message for cases when users do use markup in single line control flow statements.
dotnet/aspnetcore-tooling#9637
\n\nCommit migrated from cf474c97aa
This commit is contained in:
parent
b9fde956ea
commit
ffd11eaa05
|
|
@ -1756,14 +1756,29 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
|
|||
{
|
||||
if (!EndOfFile)
|
||||
{
|
||||
// Check for "{" to make sure we're at a block
|
||||
if (!At(SyntaxKind.LeftBrace))
|
||||
// If it's a block control flow statement the current syntax token will be a LeftBrace {,
|
||||
// otherwise we're acting on a single line control flow statement which cannot allow markup.
|
||||
|
||||
if (At(SyntaxKind.LessThan))
|
||||
{
|
||||
// if (...) <p>Hello World</p>
|
||||
Context.ErrorSink.OnError(
|
||||
RazorDiagnosticFactory.CreateParsing_SingleLineControlFlowStatementsNotAllowed(
|
||||
new SourceSpan(CurrentStart, CurrentToken.Content.Length),
|
||||
Language.GetSample(SyntaxKind.LeftBrace),
|
||||
CurrentToken.Content));
|
||||
RazorDiagnosticFactory.CreateParsing_SingleLineControlFlowStatementsCannotContainMarkup(
|
||||
new SourceSpan(CurrentStart, CurrentToken.Content.Length)));
|
||||
}
|
||||
else if (At(SyntaxKind.Transition) && NextIs(SyntaxKind.Colon))
|
||||
{
|
||||
// if (...) @: <p>The time is @DateTime.Now</p>
|
||||
Context.ErrorSink.OnError(
|
||||
RazorDiagnosticFactory.CreateParsing_SingleLineControlFlowStatementsCannotContainMarkup(
|
||||
new SourceSpan(CurrentStart, contentLength: 2 /* @: */)));
|
||||
}
|
||||
else if (At(SyntaxKind.Transition) && NextIs(SyntaxKind.Transition))
|
||||
{
|
||||
// if (...) @@JohnDoe <strong>Hi!</strong>
|
||||
Context.ErrorSink.OnError(
|
||||
RazorDiagnosticFactory.CreateParsing_SingleLineControlFlowStatementsCannotContainMarkup(
|
||||
new SourceSpan(CurrentStart, contentLength: 2 /* @@ */)));
|
||||
}
|
||||
|
||||
// Parse the statement and then we're done
|
||||
|
|
|
|||
|
|
@ -113,11 +113,11 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
internal static readonly RazorDiagnosticDescriptor Parsing_SingleLineControlFlowStatementsNotAllowed =
|
||||
new RazorDiagnosticDescriptor(
|
||||
$"{DiagnosticPrefix}1008",
|
||||
() => Resources.ParseError_SingleLine_ControlFlowStatements_Not_Allowed,
|
||||
() => Resources.ParseError_SingleLine_ControlFlowStatements_CannotContainMarkup,
|
||||
RazorDiagnosticSeverity.Error);
|
||||
public static RazorDiagnostic CreateParsing_SingleLineControlFlowStatementsNotAllowed(SourceSpan location, string expected, string actual)
|
||||
public static RazorDiagnostic CreateParsing_SingleLineControlFlowStatementsCannotContainMarkup(SourceSpan location)
|
||||
{
|
||||
return RazorDiagnostic.Create(Parsing_SingleLineControlFlowStatementsNotAllowed, location, expected, actual);
|
||||
return RazorDiagnostic.Create(Parsing_SingleLineControlFlowStatementsNotAllowed, location);
|
||||
}
|
||||
|
||||
internal static readonly RazorDiagnosticDescriptor Parsing_AtInCodeMustBeFollowedByColonParenOrIdentifierStart =
|
||||
|
|
|
|||
|
|
@ -331,18 +331,8 @@
|
|||
<data name="ParseError_Sections_Cannot_Be_Nested" xml:space="preserve">
|
||||
<value>Section blocks ("{0}") cannot be nested. Only one level of section blocks are allowed.</value>
|
||||
</data>
|
||||
<data name="ParseError_SingleLine_ControlFlowStatements_Not_Allowed" xml:space="preserve">
|
||||
<value>Expected a "{0}" but found a "{1}". Block statements must be enclosed in "{{" and "}}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{{}}":
|
||||
|
||||
@if(isLoggedIn) {{
|
||||
<p>Hello, @user</p>
|
||||
}}</value>
|
||||
<comment>{0} is only ever a single character</comment>
|
||||
<data name="ParseError_SingleLine_ControlFlowStatements_CannotContainMarkup" xml:space="preserve">
|
||||
<value>Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{{" and "}}".</value>
|
||||
</data>
|
||||
<data name="ParseError_TextTagCannotContainAttributes" xml:space="preserve">
|
||||
<value>"<text>" and "</text>" tags cannot contain attributes.</value>
|
||||
|
|
|
|||
|
|
@ -16,6 +16,12 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
}
|
||||
|
||||
#region Runtime
|
||||
[Fact]
|
||||
public void SingleLineControlFlowStatements_Runtime()
|
||||
{
|
||||
RunTimeTest();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CSharp8_Runtime()
|
||||
{
|
||||
|
|
@ -485,6 +491,12 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
#endregion
|
||||
|
||||
#region DesignTime
|
||||
[Fact]
|
||||
public void SingleLineControlFlowStatements_DesignTime()
|
||||
{
|
||||
DesignTimeTest();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CSharp8_DesignTime()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -19,6 +19,52 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
|
||||
#region Basics
|
||||
|
||||
[Fact]
|
||||
public void SingleLineControlFlowStatements_InCodeDirective()
|
||||
{
|
||||
// Arrange
|
||||
|
||||
// Act
|
||||
var generated = CompileToCSharp(@"
|
||||
@using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
@code {
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = ""Builder is null!"";
|
||||
else output = ""Builder is not null!"";
|
||||
<p>Output: @output</p>
|
||||
}
|
||||
}");
|
||||
|
||||
// Assert
|
||||
AssertDocumentNodeMatchesBaseline(generated.CodeDocument);
|
||||
AssertCSharpDocumentMatchesBaseline(generated.CodeDocument);
|
||||
CompileToAssembly(generated);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SingleLineControlFlowStatements_InCodeBlock()
|
||||
{
|
||||
// Arrange
|
||||
|
||||
// Act
|
||||
var generated = CompileToCSharp(@"
|
||||
@using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
@{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = ""Builder is null!"";
|
||||
else output = ""Builder is not null!"";
|
||||
<p>Output: @output</p>
|
||||
}");
|
||||
|
||||
// Assert
|
||||
AssertDocumentNodeMatchesBaseline(generated.CodeDocument);
|
||||
AssertCSharpDocumentMatchesBaseline(generated.CodeDocument);
|
||||
CompileToAssembly(generated);
|
||||
}
|
||||
[Fact]
|
||||
public void ChildComponent_InFunctionsDirective()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -8,6 +8,35 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
|
|||
{
|
||||
public class CSharpBlockTest : ParserTestBase
|
||||
{
|
||||
[Fact]
|
||||
public void CSharpBlock_SingleLineControlFlowStatement_Error()
|
||||
{
|
||||
ParseDocumentTest(
|
||||
@"@{
|
||||
var time = DateTime.Now;
|
||||
if (time.ToBinary() % 2 == 0) <p>The time: @time</p>
|
||||
|
||||
if (time.ToBinary() %3 == 0)
|
||||
// For some reason we want to render the time now?
|
||||
<p>The confusing time: @time</p>
|
||||
|
||||
if (time.ToBinary() % 4 == 0)
|
||||
@: <p>The time: @time</p>
|
||||
|
||||
if (time.ToBinary() % 5 == 0) @@SomeGitHubUserName <strong>Hi!</strong>
|
||||
}");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void CSharpBlock_SingleLineControlFlowStatement()
|
||||
{
|
||||
ParseDocumentTest(
|
||||
@"@{
|
||||
var time = DateTime.Now;
|
||||
if (time.ToBinary() % 2 == 0) @time
|
||||
}");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void LocalFunctionsWithRazor()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -8,6 +8,45 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
|
|||
{
|
||||
public class CSharpFunctionsTest : ParserTestBase
|
||||
{
|
||||
[Fact]
|
||||
public void Functions_SingleLineControlFlowStatement_Error()
|
||||
{
|
||||
ParseDocumentTest(
|
||||
RazorLanguageVersion.Version_3_0,
|
||||
@"
|
||||
@functions {
|
||||
string GetAnnouncmentText(string message)
|
||||
{
|
||||
if (message.Length > 0) <p>Message: @message</p>
|
||||
|
||||
if (message == null)
|
||||
// Nothing to render
|
||||
<p>Message was null</p>
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
@: <p>The time: @time</p>
|
||||
|
||||
if (message != null) @@SomeGitHubUserName <strong>@message</strong>
|
||||
}
|
||||
}
|
||||
", new[] { FunctionsDirective.Directive, }, designTime: false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Functions_SingleLineControlFlowStatement()
|
||||
{
|
||||
ParseDocumentTest(
|
||||
RazorLanguageVersion.Version_3_0,
|
||||
@"
|
||||
@functions {
|
||||
string GetAnnouncmentText(string message)
|
||||
{
|
||||
if (message.Length > 0) return ""Anouncement: "" + message;
|
||||
}
|
||||
}
|
||||
", new[] { FunctionsDirective.Directive, }, designTime: false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void MarkupInFunctionsBlock_DoesNotParseWhenNotSupported()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -0,0 +1,102 @@
|
|||
<p>Before Text</p>
|
||||
|
||||
@{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0) @("Current time is divisible by 2") else @DateTime.Now
|
||||
|
||||
object Bar()
|
||||
{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else if (DateTime.Now.ToBinary() % 3 == 0)
|
||||
return "Current time is divisible by 3";
|
||||
else
|
||||
return DateTime.Now;
|
||||
}
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
@foreach (var item in new[] {"hello"})
|
||||
@item
|
||||
|
||||
do
|
||||
@currentCount
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
@reader.ReadToEnd()
|
||||
|
||||
@lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
@functions {
|
||||
public string Foo()
|
||||
{
|
||||
var x = "";
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else
|
||||
return "It isn't divisible by two";
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
foreach (var item in new[] {"hello"})
|
||||
@item
|
||||
|
||||
do
|
||||
@currentCount
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
@reader.ReadToEnd()
|
||||
|
||||
lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
int currentCount = 0;
|
||||
|
||||
public void IncrementCount()
|
||||
{
|
||||
if (true) currentCount++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@for (var i = 0; i < 10; i++)
|
||||
@i
|
||||
|
||||
@foreach (var item in new[] {"hello"})
|
||||
@item
|
||||
|
||||
@do
|
||||
@currentCount
|
||||
while (--currentCount >= 0);
|
||||
|
||||
@while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
@using (var reader = new System.IO.StreamReader("/something"))
|
||||
// Reading the entire file
|
||||
@reader.ReadToEnd()
|
||||
|
||||
@lock (this)
|
||||
currentCount++;
|
||||
|
||||
@if (true) @@GitHubUserName <p>Hello!</p>
|
||||
|
||||
@if (true)
|
||||
@: <p>The time is @DateTime.Now</p>
|
||||
|
||||
<p>After Text</p>
|
||||
|
|
@ -0,0 +1,385 @@
|
|||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
{
|
||||
#line hidden
|
||||
public class TestFiles_IntegrationTests_CodeGenerationIntegrationTest_SingleLineControlFlowStatements_DesignTime
|
||||
{
|
||||
#pragma warning disable 219
|
||||
private void __RazorDirectiveTokenHelpers__() {
|
||||
}
|
||||
#pragma warning restore 219
|
||||
#pragma warning disable 0414
|
||||
private static System.Object __o = null;
|
||||
#pragma warning restore 0414
|
||||
#pragma warning disable 1998
|
||||
public async System.Threading.Tasks.Task ExecuteAsync()
|
||||
{
|
||||
#nullable restore
|
||||
#line 3 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = "Current time is divisible by 2";
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
else
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = DateTime.Now;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
object Bar()
|
||||
{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else if (DateTime.Now.ToBinary() % 3 == 0)
|
||||
return "Current time is divisible by 3";
|
||||
else
|
||||
return DateTime.Now;
|
||||
}
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 20 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 21 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = item;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 21 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 21 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = currentCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 31 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = reader.ReadToEnd();
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 31 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 33 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
lock (this)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 34 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 77 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
for (var i = 0; i < 10; i++)
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 78 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = i;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 78 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 80 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 81 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = item;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 81 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 83 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 84 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = currentCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 84 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 87 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 90 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
// Reading the entire file
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 92 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = reader.ReadToEnd();
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 92 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 94 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
lock (this)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 97 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
if (true)
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 97 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
@GitHubUserName
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 99 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
if (true)
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 100 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = DateTime.Now;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 101 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
#nullable restore
|
||||
#line 37 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
public string Foo()
|
||||
{
|
||||
var x = "";
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else
|
||||
return "It isn't divisible by two";
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 52 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = item;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 52 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 55 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = currentCount;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 55 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 62 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
__o = reader.ReadToEnd();
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 62 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
int currentCount = 0;
|
||||
|
||||
public void IncrementCount()
|
||||
{
|
||||
if (true) currentCount++;
|
||||
}
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml(97,12): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml(100,5): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
@ -0,0 +1,131 @@
|
|||
Document -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_SingleLineControlFlowStatements_DesignTime - -
|
||||
DesignTimeDirective -
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning disable 0414
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - private static System.Object __o = null;
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning restore 0414
|
||||
MethodDeclaration - - public async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
HtmlContent - (0:0,0 [22] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (0:0,0 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2:0,2 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (3:0,3 [11] SingleLineControlFlowStatements.cshtml) - Html - Before Text
|
||||
IntermediateToken - (14:0,14 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
IntermediateToken - (18:0,18 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (24:2,2 [44] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (24:2,2 [44] SingleLineControlFlowStatements.cshtml) - CSharp - \n if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
CSharpExpression - (70:3,44 [32] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (70:3,44 [32] SingleLineControlFlowStatements.cshtml) - CSharp - "Current time is divisible by 2"
|
||||
CSharpCode - (103:3,77 [6] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (103:3,77 [6] SingleLineControlFlowStatements.cshtml) - CSharp - else
|
||||
CSharpExpression - (110:3,84 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (110:3,84 [12] SingleLineControlFlowStatements.cshtml) - CSharp - DateTime.Now
|
||||
CSharpCode - (122:3,96 [381] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (122:3,96 [381] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n object Bar()\n {\n if (DateTime.Now.ToBinary() % 2 == 0)\n return "Current time is divisible by 2";\n else if (DateTime.Now.ToBinary() % 3 == 0)\n return "Current time is divisible by 3";\n else\n return DateTime.Now;\n }\n\n for (var i = 0; i < 10; i++)\n // Incrementing a number\n i--;\n\n
|
||||
CSharpCode - (504:19,5 [47] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (504:19,5 [47] SingleLineControlFlowStatements.cshtml) - CSharp - foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (552:20,9 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (552:20,9 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (556:20,13 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (556:20,13 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
CSharpCode - (556:20,13 [20] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (556:20,13 [20] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n do\n
|
||||
CSharpExpression - (577:23,9 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (577:23,9 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (589:23,21 [174] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (589:23,21 [174] SingleLineControlFlowStatements.cshtml) - CSharp - \n while (--currentCount >= 0);\n\n while (--currentCount <= 10)\n currentCount++;\n\n using (var reader = new System.IO.StreamReader("/something"))\n
|
||||
CSharpExpression - (764:30,9 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (764:30,9 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (782:30,27 [8] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (782:30,27 [8] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n
|
||||
CSharpCode - (791:32,5 [36] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (791:32,5 [36] SingleLineControlFlowStatements.cshtml) - CSharp - lock (this)\n currentCount++;
|
||||
CSharpCode - (827:33,23 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (827:33,23 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (832:35,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (832:35,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
HtmlContent - (1669:74,1 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1669:74,1 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (1674:76,1 [34] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1674:76,1 [34] SingleLineControlFlowStatements.cshtml) - CSharp - for (var i = 0; i < 10; i++)\n
|
||||
CSharpExpression - (1709:77,5 [1] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1709:77,5 [1] SingleLineControlFlowStatements.cshtml) - CSharp - i
|
||||
CSharpCode - (1710:77,6 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1710:77,6 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
HtmlContent - (1710:77,6 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1710:77,6 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (1715:79,1 [43] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1715:79,1 [43] SingleLineControlFlowStatements.cshtml) - CSharp - foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (1759:80,5 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1759:80,5 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (1763:80,9 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1763:80,9 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
HtmlContent - (1763:80,9 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1763:80,9 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (1768:82,1 [8] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1768:82,1 [8] SingleLineControlFlowStatements.cshtml) - CSharp - do\n
|
||||
CSharpExpression - (1777:83,5 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1777:83,5 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (1789:83,17 [30] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1789:83,17 [30] SingleLineControlFlowStatements.cshtml) - CSharp - \nwhile (--currentCount >= 0);
|
||||
HtmlContent - (1819:84,28 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1819:84,28 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (1824:86,1 [49] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1824:86,1 [49] SingleLineControlFlowStatements.cshtml) - CSharp - while (--currentCount <= 10)\n currentCount++;
|
||||
HtmlContent - (1873:87,19 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1873:87,19 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (1878:89,1 [99] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1878:89,1 [99] SingleLineControlFlowStatements.cshtml) - CSharp - using (var reader = new System.IO.StreamReader("/something"))\n // Reading the entire file\n
|
||||
CSharpExpression - (1978:91,5 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1978:91,5 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (1996:91,23 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1996:91,23 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
HtmlContent - (1996:91,23 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1996:91,23 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (2001:93,1 [32] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2001:93,1 [32] SingleLineControlFlowStatements.cshtml) - CSharp - lock (this)\n currentCount++;
|
||||
HtmlContent - (2033:94,19 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2033:94,19 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (2038:96,1 [10] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2038:96,1 [10] SingleLineControlFlowStatements.cshtml) - CSharp - if (true)
|
||||
CSharpCode - (2049:96,12 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2049:96,12 [16] SingleLineControlFlowStatements.cshtml) - CSharp - @GitHubUserName
|
||||
HtmlContent - (2065:96,28 [17] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2065:96,28 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2067:96,30 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (2068:96,31 [6] SingleLineControlFlowStatements.cshtml) - Html - Hello!
|
||||
IntermediateToken - (2074:96,37 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
IntermediateToken - (2078:96,41 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (2083:98,1 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2083:98,1 [16] SingleLineControlFlowStatements.cshtml) - CSharp - if (true) \n
|
||||
HtmlContent - (2101:99,6 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2101:99,6 [16] SingleLineControlFlowStatements.cshtml) - Html - <p>The time is
|
||||
CSharpExpression - (2118:99,23 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2118:99,23 [12] SingleLineControlFlowStatements.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (2130:99,35 [6] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2130:99,35 [6] SingleLineControlFlowStatements.cshtml) - Html - </p>\n
|
||||
CSharpCode - (2136:100,0 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2136:100,0 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
HtmlContent - (2136:100,0 [19] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2136:100,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
IntermediateToken - (2138:101,0 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2140:101,2 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (2141:101,3 [10] SingleLineControlFlowStatements.cshtml) - Html - After Text
|
||||
IntermediateToken - (2151:101,13 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
CSharpCode - (846:36,12 [386] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (846:36,12 [386] SingleLineControlFlowStatements.cshtml) - CSharp - \n public string Foo()\n {\n var x = "";\n\n if (DateTime.Now.ToBinary() % 2 == 0)\n return "Current time is divisible by 2";\n else\n return "It isn't divisible by two";\n \n for (var i = 0; i < 10; i++)\n // Incrementing a number\n i--;\n\n foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (1233:51,13 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1233:51,13 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (1237:51,17 [28] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1237:51,17 [28] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n do\n
|
||||
CSharpExpression - (1266:54,13 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1266:54,13 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (1278:54,25 [194] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1278:54,25 [194] SingleLineControlFlowStatements.cshtml) - CSharp - \n while (--currentCount >= 0);\n\n while (--currentCount <= 10)\n currentCount++;\n\n using (var reader = new System.IO.StreamReader("/something"))\n
|
||||
CSharpExpression - (1473:61,13 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1473:61,13 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (1491:61,31 [177] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1491:61,31 [177] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n lock (this)\n currentCount++;\n }\n\n int currentCount = 0;\n\n public void IncrementCount()\n {\n if (true) currentCount++;\n }\n\n
|
||||
|
|
@ -0,0 +1,363 @@
|
|||
Source Location: (24:2,2 [44] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
if (DateTime.Now.ToBinary() % 2 == 0) |
|
||||
Generated Location: (782:19,2 [44] )
|
||||
|
|
||||
if (DateTime.Now.ToBinary() % 2 == 0) |
|
||||
|
||||
Source Location: (70:3,44 [32] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|"Current time is divisible by 2"|
|
||||
Generated Location: (1048:27,44 [32] )
|
||||
|"Current time is divisible by 2"|
|
||||
|
||||
Source Location: (103:3,77 [6] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
| else |
|
||||
Generated Location: (1336:34,77 [6] )
|
||||
| else |
|
||||
|
||||
Source Location: (110:3,84 [12] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|DateTime.Now|
|
||||
Generated Location: (1604:41,84 [12] )
|
||||
|DateTime.Now|
|
||||
|
||||
Source Location: (122:3,96 [381] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
||||
object Bar()
|
||||
{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else if (DateTime.Now.ToBinary() % 3 == 0)
|
||||
return "Current time is divisible by 3";
|
||||
else
|
||||
return DateTime.Now;
|
||||
}
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
|
|
||||
Generated Location: (1891:48,96 [381] )
|
||||
|
|
||||
|
||||
object Bar()
|
||||
{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else if (DateTime.Now.ToBinary() % 3 == 0)
|
||||
return "Current time is divisible by 3";
|
||||
else
|
||||
return DateTime.Now;
|
||||
}
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
|
|
||||
|
||||
Source Location: (504:19,5 [47] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|foreach (var item in new[] {"hello"})
|
||||
|
|
||||
Generated Location: (2456:71,5 [47] )
|
||||
|foreach (var item in new[] {"hello"})
|
||||
|
|
||||
|
||||
Source Location: (552:20,9 [4] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|item|
|
||||
Generated Location: (2691:79,9 [4] )
|
||||
|item|
|
||||
|
||||
Source Location: (556:20,13 [0] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
||
|
||||
Generated Location: (2888:86,13 [0] )
|
||||
||
|
||||
|
||||
Source Location: (556:20,13 [20] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
||||
do
|
||||
|
|
||||
Generated Location: (3080:93,13 [20] )
|
||||
|
|
||||
|
||||
do
|
||||
|
|
||||
|
||||
Source Location: (577:23,9 [12] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|currentCount|
|
||||
Generated Location: (3288:103,9 [12] )
|
||||
|currentCount|
|
||||
|
||||
Source Location: (589:23,21 [174] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
|
||||
Generated Location: (3501:110,21 [174] )
|
||||
|
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
|
||||
|
||||
Source Location: (764:30,9 [18] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|reader.ReadToEnd()|
|
||||
Generated Location: (3863:124,9 [18] )
|
||||
|reader.ReadToEnd()|
|
||||
|
||||
Source Location: (782:30,27 [8] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
||||
|
|
||||
Generated Location: (4088:131,27 [8] )
|
||||
|
|
||||
|
||||
|
|
||||
|
||||
Source Location: (791:32,5 [36] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|lock (this)
|
||||
currentCount++;|
|
||||
Generated Location: (4280:140,5 [36] )
|
||||
|lock (this)
|
||||
currentCount++;|
|
||||
|
||||
Source Location: (827:33,23 [2] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
|
||||
Generated Location: (4518:148,23 [2] )
|
||||
|
|
||||
|
|
||||
|
||||
Source Location: (1674:76,1 [34] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|for (var i = 0; i < 10; i++)
|
||||
|
|
||||
Generated Location: (4698:155,1 [34] )
|
||||
|for (var i = 0; i < 10; i++)
|
||||
|
|
||||
|
||||
Source Location: (1709:77,5 [1] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|i|
|
||||
Generated Location: (4917:163,6 [1] )
|
||||
|i|
|
||||
|
||||
Source Location: (1710:77,6 [0] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
||
|
||||
Generated Location: (5104:170,6 [0] )
|
||||
||
|
||||
|
||||
Source Location: (1715:79,1 [43] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|foreach (var item in new[] {"hello"})
|
||||
|
|
||||
Generated Location: (5284:177,1 [43] )
|
||||
|foreach (var item in new[] {"hello"})
|
||||
|
|
||||
|
||||
Source Location: (1759:80,5 [4] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|item|
|
||||
Generated Location: (5512:185,6 [4] )
|
||||
|item|
|
||||
|
||||
Source Location: (1763:80,9 [0] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
||
|
||||
Generated Location: (5705:192,9 [0] )
|
||||
||
|
||||
|
||||
Source Location: (1768:82,1 [8] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|do
|
||||
|
|
||||
Generated Location: (5885:199,1 [8] )
|
||||
|do
|
||||
|
|
||||
|
||||
Source Location: (1777:83,5 [12] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|currentCount|
|
||||
Generated Location: (6078:207,6 [12] )
|
||||
|currentCount|
|
||||
|
||||
Source Location: (1789:83,17 [30] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
while (--currentCount >= 0);|
|
||||
Generated Location: (6287:214,17 [30] )
|
||||
|
|
||||
while (--currentCount >= 0);|
|
||||
|
||||
Source Location: (1824:86,1 [49] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|while (--currentCount <= 10)
|
||||
currentCount++;|
|
||||
Generated Location: (6497:222,1 [49] )
|
||||
|while (--currentCount <= 10)
|
||||
currentCount++;|
|
||||
|
||||
Source Location: (1878:89,1 [99] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|using (var reader = new System.IO.StreamReader("/something"))
|
||||
// Reading the entire file
|
||||
|
|
||||
Generated Location: (6726:230,1 [99] )
|
||||
|using (var reader = new System.IO.StreamReader("/something"))
|
||||
// Reading the entire file
|
||||
|
|
||||
|
||||
Source Location: (1978:91,5 [18] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|reader.ReadToEnd()|
|
||||
Generated Location: (7010:239,6 [18] )
|
||||
|reader.ReadToEnd()|
|
||||
|
||||
Source Location: (1996:91,23 [0] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
||
|
||||
Generated Location: (7231:246,23 [0] )
|
||||
||
|
||||
|
||||
Source Location: (2001:93,1 [32] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|lock (this)
|
||||
currentCount++;|
|
||||
Generated Location: (7411:253,1 [32] )
|
||||
|lock (this)
|
||||
currentCount++;|
|
||||
|
||||
Source Location: (2038:96,1 [10] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|if (true) |
|
||||
Generated Location: (7623:261,1 [10] )
|
||||
|if (true) |
|
||||
|
||||
Source Location: (2049:96,12 [16] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|@GitHubUserName |
|
||||
Generated Location: (7824:268,12 [16] )
|
||||
|@GitHubUserName |
|
||||
|
||||
Source Location: (2083:98,1 [16] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|if (true)
|
||||
|
|
||||
Generated Location: (8020:275,1 [16] )
|
||||
|if (true)
|
||||
|
|
||||
|
||||
Source Location: (2118:99,23 [12] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|DateTime.Now|
|
||||
Generated Location: (8239:283,23 [12] )
|
||||
|DateTime.Now|
|
||||
|
||||
Source Location: (2136:100,0 [0] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
||
|
||||
Generated Location: (8432:290,0 [0] )
|
||||
||
|
||||
|
||||
Source Location: (846:36,12 [386] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
public string Foo()
|
||||
{
|
||||
var x = "";
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else
|
||||
return "It isn't divisible by two";
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
|
||||
Generated Location: (8670:298,12 [386] )
|
||||
|
|
||||
public string Foo()
|
||||
{
|
||||
var x = "";
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else
|
||||
return "It isn't divisible by two";
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
|
||||
|
||||
Source Location: (1233:51,13 [4] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|item|
|
||||
Generated Location: (9248:320,13 [4] )
|
||||
|item|
|
||||
|
||||
Source Location: (1237:51,17 [28] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
||||
do
|
||||
|
|
||||
Generated Location: (9449:327,17 [28] )
|
||||
|
|
||||
|
||||
do
|
||||
|
|
||||
|
||||
Source Location: (1266:54,13 [12] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|currentCount|
|
||||
Generated Location: (9669:337,13 [12] )
|
||||
|currentCount|
|
||||
|
||||
Source Location: (1278:54,25 [194] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
|
||||
Generated Location: (9886:344,25 [194] )
|
||||
|
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
|
||||
|
||||
Source Location: (1473:61,13 [18] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|reader.ReadToEnd()|
|
||||
Generated Location: (10272:358,13 [18] )
|
||||
|reader.ReadToEnd()|
|
||||
|
||||
Source Location: (1491:61,31 [177] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml)
|
||||
|
|
||||
|
||||
lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
int currentCount = 0;
|
||||
|
||||
public void IncrementCount()
|
||||
{
|
||||
if (true) currentCount++;
|
||||
}
|
||||
|
||||
|
|
||||
Generated Location: (10501:365,31 [177] )
|
||||
|
|
||||
|
||||
lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
int currentCount = 0;
|
||||
|
||||
public void IncrementCount()
|
||||
{
|
||||
if (true) currentCount++;
|
||||
}
|
||||
|
||||
|
|
||||
|
||||
|
|
@ -0,0 +1,344 @@
|
|||
#pragma checksum "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "a057512a2be3416c0f48286af45a4e9855e06f55"
|
||||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
[assembly: global::Microsoft.AspNetCore.Razor.Hosting.RazorCompiledItemAttribute(typeof(Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles.TestFiles_IntegrationTests_CodeGenerationIntegrationTest_SingleLineControlFlowStatements_Runtime), @"default", @"/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml")]
|
||||
namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
{
|
||||
#line hidden
|
||||
[global::Microsoft.AspNetCore.Razor.Hosting.RazorSourceChecksumAttribute(@"SHA1", @"a057512a2be3416c0f48286af45a4e9855e06f55", @"/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml")]
|
||||
public class TestFiles_IntegrationTests_CodeGenerationIntegrationTest_SingleLineControlFlowStatements_Runtime
|
||||
{
|
||||
#pragma warning disable 1998
|
||||
public async System.Threading.Tasks.Task ExecuteAsync()
|
||||
{
|
||||
WriteLiteral("<p>Before Text</p>\r\n\r\n");
|
||||
#nullable restore
|
||||
#line 3 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write("Current time is divisible by 2");
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
else
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 4 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
object Bar()
|
||||
{
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else if (DateTime.Now.ToBinary() % 3 == 0)
|
||||
return "Current time is divisible by 3";
|
||||
else
|
||||
return DateTime.Now;
|
||||
}
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 20 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 21 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(item);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 21 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(currentCount);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 31 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(reader.ReadToEnd());
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 33 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
lock (this)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 77 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
for (var i = 0; i < 10; i++)
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 78 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(i);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 80 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 81 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(item);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 83 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 84 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(currentCount);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 84 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 87 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 90 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
// Reading the entire file
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 92 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(reader.ReadToEnd());
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 94 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
lock (this)
|
||||
currentCount++;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("\r\n");
|
||||
#nullable restore
|
||||
#line 97 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
if (true)
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 97 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
@GitHubUserName
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("<p>Hello!</p>\r\n\r\n");
|
||||
#nullable restore
|
||||
#line 99 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
if (true)
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral(" <p>The time is ");
|
||||
#nullable restore
|
||||
#line 100 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
WriteLiteral("</p>\r\n");
|
||||
WriteLiteral("<p>After Text</p>");
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
#nullable restore
|
||||
#line 37 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
public string Foo()
|
||||
{
|
||||
var x = "";
|
||||
|
||||
if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
return "Current time is divisible by 2";
|
||||
else
|
||||
return "It isn't divisible by two";
|
||||
|
||||
for (var i = 0; i < 10; i++)
|
||||
// Incrementing a number
|
||||
i--;
|
||||
|
||||
foreach (var item in new[] {"hello"})
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 52 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(item);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 52 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
do
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 55 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(currentCount);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 55 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
while (--currentCount >= 0);
|
||||
|
||||
while (--currentCount <= 10)
|
||||
currentCount++;
|
||||
|
||||
using (var reader = new System.IO.StreamReader("/something"))
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 62 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
Write(reader.ReadToEnd());
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 62 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml"
|
||||
|
||||
|
||||
lock (this)
|
||||
currentCount++;
|
||||
}
|
||||
|
||||
int currentCount = 0;
|
||||
|
||||
public void IncrementCount()
|
||||
{
|
||||
if (true) currentCount++;
|
||||
}
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml(97,12): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements.cshtml(100,5): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
Document -
|
||||
RazorCompiledItemAttribute -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
RazorSourceChecksumAttribute -
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_SingleLineControlFlowStatements_Runtime - -
|
||||
MethodDeclaration - - public async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
HtmlContent - (0:0,0 [22] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (0:0,0 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2:0,2 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (3:0,3 [11] SingleLineControlFlowStatements.cshtml) - Html - Before Text
|
||||
IntermediateToken - (14:0,14 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
IntermediateToken - (18:0,18 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (24:2,2 [44] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (24:2,2 [44] SingleLineControlFlowStatements.cshtml) - CSharp - \n if (DateTime.Now.ToBinary() % 2 == 0)
|
||||
CSharpExpression - (70:3,44 [32] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (70:3,44 [32] SingleLineControlFlowStatements.cshtml) - CSharp - "Current time is divisible by 2"
|
||||
CSharpCode - (103:3,77 [6] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (103:3,77 [6] SingleLineControlFlowStatements.cshtml) - CSharp - else
|
||||
CSharpExpression - (110:3,84 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (110:3,84 [12] SingleLineControlFlowStatements.cshtml) - CSharp - DateTime.Now
|
||||
CSharpCode - (122:3,96 [381] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (122:3,96 [381] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n object Bar()\n {\n if (DateTime.Now.ToBinary() % 2 == 0)\n return "Current time is divisible by 2";\n else if (DateTime.Now.ToBinary() % 3 == 0)\n return "Current time is divisible by 3";\n else\n return DateTime.Now;\n }\n\n for (var i = 0; i < 10; i++)\n // Incrementing a number\n i--;\n\n
|
||||
CSharpCode - (504:19,5 [47] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (504:19,5 [47] SingleLineControlFlowStatements.cshtml) - CSharp - foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (552:20,9 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (552:20,9 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (556:20,13 [0] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (556:20,13 [0] SingleLineControlFlowStatements.cshtml) - CSharp -
|
||||
CSharpCode - (556:20,13 [20] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (556:20,13 [20] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n do\n
|
||||
CSharpExpression - (577:23,9 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (577:23,9 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (589:23,21 [174] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (589:23,21 [174] SingleLineControlFlowStatements.cshtml) - CSharp - \n while (--currentCount >= 0);\n\n while (--currentCount <= 10)\n currentCount++;\n\n using (var reader = new System.IO.StreamReader("/something"))\n
|
||||
CSharpExpression - (764:30,9 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (764:30,9 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (782:30,27 [8] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (782:30,27 [8] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n
|
||||
CSharpCode - (791:32,5 [36] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (791:32,5 [36] SingleLineControlFlowStatements.cshtml) - CSharp - lock (this)\n currentCount++;
|
||||
CSharpCode - (827:33,23 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (827:33,23 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (832:35,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (832:35,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
HtmlContent - (1671:75,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1671:75,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (1674:76,1 [34] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1674:76,1 [34] SingleLineControlFlowStatements.cshtml) - CSharp - for (var i = 0; i < 10; i++)\n
|
||||
CSharpExpression - (1709:77,5 [1] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1709:77,5 [1] SingleLineControlFlowStatements.cshtml) - CSharp - i
|
||||
CSharpCode - (1710:77,6 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1710:77,6 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (1712:78,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1712:78,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (1715:79,1 [43] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1715:79,1 [43] SingleLineControlFlowStatements.cshtml) - CSharp - foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (1759:80,5 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1759:80,5 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (1763:80,9 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1763:80,9 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (1765:81,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1765:81,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (1768:82,1 [8] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1768:82,1 [8] SingleLineControlFlowStatements.cshtml) - CSharp - do\n
|
||||
CSharpExpression - (1777:83,5 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1777:83,5 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (1789:83,17 [32] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1789:83,17 [32] SingleLineControlFlowStatements.cshtml) - CSharp - \nwhile (--currentCount >= 0);\n
|
||||
HtmlContent - (1821:85,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1821:85,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (1824:86,1 [51] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1824:86,1 [51] SingleLineControlFlowStatements.cshtml) - CSharp - while (--currentCount <= 10)\n currentCount++;\n
|
||||
HtmlContent - (1875:88,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1875:88,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (1878:89,1 [99] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1878:89,1 [99] SingleLineControlFlowStatements.cshtml) - CSharp - using (var reader = new System.IO.StreamReader("/something"))\n // Reading the entire file\n
|
||||
CSharpExpression - (1978:91,5 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1978:91,5 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (1996:91,23 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1996:91,23 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (1998:92,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1998:92,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (2001:93,1 [34] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2001:93,1 [34] SingleLineControlFlowStatements.cshtml) - CSharp - lock (this)\n currentCount++;\n
|
||||
HtmlContent - (2035:95,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2035:95,0 [2] SingleLineControlFlowStatements.cshtml) - Html - \n
|
||||
CSharpCode - (2038:96,1 [10] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2038:96,1 [10] SingleLineControlFlowStatements.cshtml) - CSharp - if (true)
|
||||
CSharpCode - (2049:96,12 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2049:96,12 [16] SingleLineControlFlowStatements.cshtml) - CSharp - @GitHubUserName
|
||||
HtmlContent - (2065:96,28 [17] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2065:96,28 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2067:96,30 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (2068:96,31 [6] SingleLineControlFlowStatements.cshtml) - Html - Hello!
|
||||
IntermediateToken - (2074:96,37 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
IntermediateToken - (2078:96,41 [4] SingleLineControlFlowStatements.cshtml) - Html - \n\n
|
||||
CSharpCode - (2083:98,1 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2083:98,1 [16] SingleLineControlFlowStatements.cshtml) - CSharp - if (true) \n
|
||||
HtmlContent - (2101:99,6 [16] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2101:99,6 [16] SingleLineControlFlowStatements.cshtml) - Html - <p>The time is
|
||||
CSharpExpression - (2118:99,23 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2118:99,23 [12] SingleLineControlFlowStatements.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (2130:99,35 [6] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2130:99,35 [6] SingleLineControlFlowStatements.cshtml) - Html - </p>\n
|
||||
CSharpCode - (2136:100,0 [2] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2136:100,0 [2] SingleLineControlFlowStatements.cshtml) - CSharp - \n
|
||||
HtmlContent - (2138:101,0 [17] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (2138:101,0 [2] SingleLineControlFlowStatements.cshtml) - Html - <p
|
||||
IntermediateToken - (2140:101,2 [1] SingleLineControlFlowStatements.cshtml) - Html - >
|
||||
IntermediateToken - (2141:101,3 [10] SingleLineControlFlowStatements.cshtml) - Html - After Text
|
||||
IntermediateToken - (2151:101,13 [4] SingleLineControlFlowStatements.cshtml) - Html - </p>
|
||||
CSharpCode - (846:36,12 [386] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (846:36,12 [386] SingleLineControlFlowStatements.cshtml) - CSharp - \n public string Foo()\n {\n var x = "";\n\n if (DateTime.Now.ToBinary() % 2 == 0)\n return "Current time is divisible by 2";\n else\n return "It isn't divisible by two";\n \n for (var i = 0; i < 10; i++)\n // Incrementing a number\n i--;\n\n foreach (var item in new[] {"hello"})\n
|
||||
CSharpExpression - (1233:51,13 [4] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1233:51,13 [4] SingleLineControlFlowStatements.cshtml) - CSharp - item
|
||||
CSharpCode - (1237:51,17 [28] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1237:51,17 [28] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n do\n
|
||||
CSharpExpression - (1266:54,13 [12] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1266:54,13 [12] SingleLineControlFlowStatements.cshtml) - CSharp - currentCount
|
||||
CSharpCode - (1278:54,25 [194] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1278:54,25 [194] SingleLineControlFlowStatements.cshtml) - CSharp - \n while (--currentCount >= 0);\n\n while (--currentCount <= 10)\n currentCount++;\n\n using (var reader = new System.IO.StreamReader("/something"))\n
|
||||
CSharpExpression - (1473:61,13 [18] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1473:61,13 [18] SingleLineControlFlowStatements.cshtml) - CSharp - reader.ReadToEnd()
|
||||
CSharpCode - (1491:61,31 [177] SingleLineControlFlowStatements.cshtml)
|
||||
IntermediateToken - (1491:61,31 [177] SingleLineControlFlowStatements.cshtml) - CSharp - \n\n lock (this)\n currentCount++;\n }\n\n int currentCount = 0;\n\n public void IncrementCount()\n {\n if (true) currentCount++;\n }\n\n
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
namespace Test
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
#nullable restore
|
||||
#line 1 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
public class TestComponent : Microsoft.AspNetCore.Components.ComponentBase
|
||||
{
|
||||
#pragma warning disable 219
|
||||
private void __RazorDirectiveTokenHelpers__() {
|
||||
}
|
||||
#pragma warning restore 219
|
||||
#pragma warning disable 0414
|
||||
private static System.Object __o = null;
|
||||
#pragma warning restore 0414
|
||||
#pragma warning disable 1998
|
||||
protected override void BuildRenderTree(Microsoft.AspNetCore.Components.RenderTree.RenderTreeBuilder builder)
|
||||
{
|
||||
#nullable restore
|
||||
#line 3 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 7 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
__o = output;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
|
||||
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
Document -
|
||||
NamespaceDeclaration - - Test
|
||||
UsingDirective - (3:1,1 [12] ) - System
|
||||
UsingDirective - (18:2,1 [32] ) - System.Collections.Generic
|
||||
UsingDirective - (53:3,1 [17] ) - System.Linq
|
||||
UsingDirective - (73:4,1 [28] ) - System.Threading.Tasks
|
||||
UsingDirective - (104:5,1 [37] ) - Microsoft.AspNetCore.Components
|
||||
UsingDirective - (1:0,1 [49] x:\dir\subdir\Test\TestComponent.cshtml) - Microsoft.AspNetCore.Components.RenderTree
|
||||
ClassDeclaration - - public - TestComponent - Microsoft.AspNetCore.Components.ComponentBase -
|
||||
DesignTimeDirective -
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning disable 0414
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - private static System.Object __o = null;
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning restore 0414
|
||||
MethodDeclaration - - protected override - void - BuildRenderTree
|
||||
HtmlContent - (50:0,50 [4] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (50:0,50 [4] x:\dir\subdir\Test\TestComponent.cshtml) - Html - \n\n
|
||||
CSharpCode - (56:2,2 [136] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (56:2,2 [136] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n var output = string.Empty;\n if (builder == null) output = "Builder is null!";\n else output = "Builder is not null!";\n
|
||||
MarkupElement - (192:6,4 [22] x:\dir\subdir\Test\TestComponent.cshtml) - p
|
||||
HtmlContent - (195:6,7 [8] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (195:6,7 [8] x:\dir\subdir\Test\TestComponent.cshtml) - Html - Output:
|
||||
CSharpExpression - (204:6,16 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (204:6,16 [6] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - output
|
||||
CSharpCode - (214:6,26 [2] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (214:6,26 [2] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
Source Location: (1:0,1 [49] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|using Microsoft.AspNetCore.Components.RenderTree;|
|
||||
Generated Location: (320:12,0 [49] )
|
||||
|using Microsoft.AspNetCore.Components.RenderTree;|
|
||||
|
||||
Source Location: (56:2,2 [136] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
Generated Location: (1016:31,2 [136] )
|
||||
|
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
|
||||
Source Location: (204:6,16 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|output|
|
||||
Generated Location: (1290:42,16 [6] )
|
||||
|output|
|
||||
|
||||
Source Location: (214:6,26 [2] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
|
|
||||
Generated Location: (1387:47,38 [2] )
|
||||
|
|
||||
|
|
||||
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
namespace Test
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
#nullable restore
|
||||
#line 1 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
public class TestComponent : Microsoft.AspNetCore.Components.ComponentBase
|
||||
{
|
||||
#pragma warning disable 219
|
||||
private void __RazorDirectiveTokenHelpers__() {
|
||||
}
|
||||
#pragma warning restore 219
|
||||
#pragma warning disable 0414
|
||||
private static System.Object __o = null;
|
||||
#pragma warning restore 0414
|
||||
#pragma warning disable 1998
|
||||
protected override void BuildRenderTree(Microsoft.AspNetCore.Components.RenderTree.RenderTreeBuilder builder)
|
||||
{
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
#nullable restore
|
||||
#line 3 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 9 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
__o = output;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
#nullable restore
|
||||
#line 9 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
Document -
|
||||
NamespaceDeclaration - - Test
|
||||
UsingDirective - (3:1,1 [12] ) - System
|
||||
UsingDirective - (18:2,1 [32] ) - System.Collections.Generic
|
||||
UsingDirective - (53:3,1 [17] ) - System.Linq
|
||||
UsingDirective - (73:4,1 [28] ) - System.Threading.Tasks
|
||||
UsingDirective - (104:5,1 [37] ) - Microsoft.AspNetCore.Components
|
||||
UsingDirective - (1:0,1 [49] x:\dir\subdir\Test\TestComponent.cshtml) - Microsoft.AspNetCore.Components.RenderTree
|
||||
ClassDeclaration - - public - TestComponent - Microsoft.AspNetCore.Components.ComponentBase -
|
||||
DesignTimeDirective -
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning disable 0414
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - private static System.Object __o = null;
|
||||
CSharpCode -
|
||||
IntermediateToken - - CSharp - #pragma warning restore 0414
|
||||
MethodDeclaration - - protected override - void - BuildRenderTree
|
||||
HtmlContent - (50:0,50 [4] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (50:0,50 [4] x:\dir\subdir\Test\TestComponent.cshtml) - Html - \n\n
|
||||
CSharpCode - (61:2,7 [217] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (61:2,7 [217] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n void RenderChildComponent(RenderTreeBuilder builder)\n {\n var output = string.Empty;\n if (builder == null) output = "Builder is null!";\n else output = "Builder is not null!";\n
|
||||
MarkupElement - (278:8,8 [22] x:\dir\subdir\Test\TestComponent.cshtml) - p
|
||||
HtmlContent - (281:8,11 [8] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (281:8,11 [8] x:\dir\subdir\Test\TestComponent.cshtml) - Html - Output:
|
||||
CSharpExpression - (290:8,20 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (290:8,20 [6] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - output
|
||||
CSharpCode - (300:8,30 [9] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (300:8,30 [9] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n }\n
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
Source Location: (1:0,1 [49] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|using Microsoft.AspNetCore.Components.RenderTree;|
|
||||
Generated Location: (320:12,0 [49] )
|
||||
|using Microsoft.AspNetCore.Components.RenderTree;|
|
||||
|
||||
Source Location: (61:2,7 [217] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
Generated Location: (1070:33,7 [217] )
|
||||
|
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
|
||||
Source Location: (290:8,20 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|output|
|
||||
Generated Location: (1429:46,20 [6] )
|
||||
|output|
|
||||
|
||||
Source Location: (300:8,30 [9] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
}
|
||||
|
|
||||
Generated Location: (1588:53,30 [9] )
|
||||
|
|
||||
}
|
||||
|
|
||||
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
namespace Test
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
#nullable restore
|
||||
#line 1 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
public class TestComponent : Microsoft.AspNetCore.Components.ComponentBase
|
||||
{
|
||||
#pragma warning disable 1998
|
||||
protected override void BuildRenderTree(Microsoft.AspNetCore.Components.RenderTree.RenderTreeBuilder builder)
|
||||
{
|
||||
#nullable restore
|
||||
#line 3 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
builder.AddContent(0, " ");
|
||||
builder.OpenElement(1, "p");
|
||||
builder.AddContent(2, "Output: ");
|
||||
builder.AddContent(3,
|
||||
#nullable restore
|
||||
#line 7 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
output
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
);
|
||||
builder.CloseElement();
|
||||
builder.AddMarkupContent(4, "\r\n");
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
Document -
|
||||
NamespaceDeclaration - - Test
|
||||
UsingDirective - (3:1,1 [14] ) - System
|
||||
UsingDirective - (18:2,1 [34] ) - System.Collections.Generic
|
||||
UsingDirective - (53:3,1 [19] ) - System.Linq
|
||||
UsingDirective - (73:4,1 [30] ) - System.Threading.Tasks
|
||||
UsingDirective - (104:5,1 [39] ) - Microsoft.AspNetCore.Components
|
||||
UsingDirective - (1:0,1 [51] x:\dir\subdir\Test\TestComponent.cshtml) - Microsoft.AspNetCore.Components.RenderTree
|
||||
ClassDeclaration - - public - TestComponent - Microsoft.AspNetCore.Components.ComponentBase -
|
||||
MethodDeclaration - - protected override - void - BuildRenderTree
|
||||
CSharpCode - (56:2,2 [132] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (56:2,2 [132] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n var output = string.Empty;\n if (builder == null) output = "Builder is null!";\n else output = "Builder is not null!";\n
|
||||
HtmlContent - (188:6,0 [4] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (188:6,0 [4] x:\dir\subdir\Test\TestComponent.cshtml) - Html -
|
||||
MarkupElement - (192:6,4 [22] x:\dir\subdir\Test\TestComponent.cshtml) - p
|
||||
HtmlContent - (195:6,7 [8] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (195:6,7 [8] x:\dir\subdir\Test\TestComponent.cshtml) - Html - Output:
|
||||
CSharpExpression - (204:6,16 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (204:6,16 [6] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - output
|
||||
HtmlContent - (214:6,26 [2] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (214:6,26 [2] x:\dir\subdir\Test\TestComponent.cshtml) - Html - \n
|
||||
CSharpCode - (216:7,0 [0] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (216:7,0 [0] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp -
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
Source Location: (56:2,2 [132] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
Generated Location: (748:24,2 [132] )
|
||||
|
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
// <auto-generated/>
|
||||
#pragma warning disable 1591
|
||||
namespace Test
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
#nullable restore
|
||||
#line 1 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
using Microsoft.AspNetCore.Components.RenderTree;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
public class TestComponent : Microsoft.AspNetCore.Components.ComponentBase
|
||||
{
|
||||
#pragma warning disable 1998
|
||||
protected override void BuildRenderTree(Microsoft.AspNetCore.Components.RenderTree.RenderTreeBuilder builder)
|
||||
{
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
#nullable restore
|
||||
#line 3 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
builder.AddContent(0, " ");
|
||||
builder.OpenElement(1, "p");
|
||||
builder.AddContent(2, "Output: ");
|
||||
builder.AddContent(3,
|
||||
#nullable restore
|
||||
#line 9 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
output
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
);
|
||||
builder.CloseElement();
|
||||
builder.AddMarkupContent(4, "\r\n");
|
||||
#nullable restore
|
||||
#line 10 "x:\dir\subdir\Test\TestComponent.cshtml"
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#nullable disable
|
||||
}
|
||||
}
|
||||
#pragma warning restore 1591
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
Document -
|
||||
NamespaceDeclaration - - Test
|
||||
UsingDirective - (3:1,1 [14] ) - System
|
||||
UsingDirective - (18:2,1 [34] ) - System.Collections.Generic
|
||||
UsingDirective - (53:3,1 [19] ) - System.Linq
|
||||
UsingDirective - (73:4,1 [30] ) - System.Threading.Tasks
|
||||
UsingDirective - (104:5,1 [39] ) - Microsoft.AspNetCore.Components
|
||||
UsingDirective - (1:0,1 [51] x:\dir\subdir\Test\TestComponent.cshtml) - Microsoft.AspNetCore.Components.RenderTree
|
||||
ClassDeclaration - - public - TestComponent - Microsoft.AspNetCore.Components.ComponentBase -
|
||||
MethodDeclaration - - protected override - void - BuildRenderTree
|
||||
CSharpCode - (61:2,7 [209] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (61:2,7 [209] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n void RenderChildComponent(RenderTreeBuilder builder)\n {\n var output = string.Empty;\n if (builder == null) output = "Builder is null!";\n else output = "Builder is not null!";\n
|
||||
HtmlContent - (270:8,0 [8] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (270:8,0 [8] x:\dir\subdir\Test\TestComponent.cshtml) - Html -
|
||||
MarkupElement - (278:8,8 [22] x:\dir\subdir\Test\TestComponent.cshtml) - p
|
||||
HtmlContent - (281:8,11 [8] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (281:8,11 [8] x:\dir\subdir\Test\TestComponent.cshtml) - Html - Output:
|
||||
CSharpExpression - (290:8,20 [6] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (290:8,20 [6] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - output
|
||||
HtmlContent - (300:8,30 [2] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (300:8,30 [2] x:\dir\subdir\Test\TestComponent.cshtml) - Html - \n
|
||||
CSharpCode - (302:9,0 [7] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
IntermediateToken - (302:9,0 [7] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - }\n
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
Source Location: (61:2,7 [209] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
|
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
Generated Location: (802:26,7 [209] )
|
||||
|
|
||||
void RenderChildComponent(RenderTreeBuilder builder)
|
||||
{
|
||||
var output = string.Empty;
|
||||
if (builder == null) output = "Builder is null!";
|
||||
else output = "Builder is not null!";
|
||||
|
|
||||
|
||||
Source Location: (302:9,0 [7] x:\dir\subdir\Test\TestComponent.cshtml)
|
||||
| }
|
||||
|
|
||||
Generated Location: (1529:52,0 [7] )
|
||||
| }
|
||||
|
|
||||
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
Markup span at (0:0,0 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [76] )
|
||||
Transition span at (0:0,0 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [76] )
|
||||
MetaCode span at (1:0,1 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [76] )
|
||||
Code span at (2:0,2 [66] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [76] )
|
||||
Transition span at (68:2,34 [1] ) (Accepts:None) - Parent: Expression block at (68:2,34 [5] )
|
||||
Code span at (69:2,35 [4] ) (Accepts:NonWhitespace) - Parent: Expression block at (68:2,34 [5] )
|
||||
Code span at (73:2,39 [2] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [76] )
|
||||
MetaCode span at (75:3,0 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [76] )
|
||||
Markup span at (76:3,1 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [76] )
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
RazorDocument - [0..76)::76 - [@{LF var time = DateTime.Now;LF if (time.ToBinary() % 2 == 0) @timeLF}]
|
||||
MarkupBlock - [0..76)::76
|
||||
MarkupTextLiteral - [0..0)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
CSharpCodeBlock - [0..76)::76
|
||||
CSharpStatement - [0..76)::76
|
||||
CSharpTransition - [0..1)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpStatementBody - [1..76)::75
|
||||
RazorMetaCode - [1..2)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
LeftBrace;[{];
|
||||
CSharpCodeBlock - [2..75)::73
|
||||
CSharpStatementLiteral - [2..68)::66 - [LF var time = DateTime.Now;LF if (time.ToBinary() % 2 == 0) ] - Gen<Stmt> - AutoCompleteEditHandler;Accepts:Any,AutoComplete:[<null>];AtEOL
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Identifier;[var];
|
||||
Whitespace;[ ];
|
||||
Identifier;[time];
|
||||
Whitespace;[ ];
|
||||
Assign;[=];
|
||||
Whitespace;[ ];
|
||||
Identifier;[DateTime];
|
||||
Dot;[.];
|
||||
Identifier;[Now];
|
||||
Semicolon;[;];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[time];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[2];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [68..73)::5
|
||||
CSharpImplicitExpression - [68..73)::5
|
||||
CSharpTransition - [68..69)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [69..73)::4
|
||||
CSharpCodeBlock - [69..73)::4
|
||||
CSharpExpressionLiteral - [69..73)::4 - [time] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[ATD];K14
|
||||
Identifier;[time];
|
||||
CSharpStatementLiteral - [73..75)::2 - [LF] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
RazorMetaCode - [75..76)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
RightBrace;[}];
|
||||
MarkupTextLiteral - [76..76)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
Markup span at (0:0,0 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [382] )
|
||||
Transition span at (0:0,0 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [382] )
|
||||
MetaCode span at (1:0,1 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [382] )
|
||||
Code span at (2:0,2 [66] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
Markup span at (68:2,34 [3] ) (Accepts:None) - Parent: Tag block at (68:2,34 [3] )
|
||||
Markup span at (71:2,37 [10] ) (Accepts:Any) - Parent: Markup block at (68:2,34 [24] )
|
||||
Transition span at (81:2,47 [1] ) (Accepts:None) - Parent: Expression block at (81:2,47 [5] )
|
||||
Code span at (82:2,48 [4] ) (Accepts:NonWhitespace) - Parent: Expression block at (81:2,47 [5] )
|
||||
Markup span at (86:2,52 [4] ) (Accepts:None) - Parent: Tag block at (86:2,52 [4] )
|
||||
Markup span at (90:2,56 [2] ) (Accepts:None) - Parent: Markup block at (68:2,34 [24] )
|
||||
Code span at (92:3,0 [104] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
Markup span at (196:6,8 [3] ) (Accepts:None) - Parent: Tag block at (196:6,8 [3] )
|
||||
Markup span at (199:6,11 [20] ) (Accepts:Any) - Parent: Markup block at (196:6,8 [34] )
|
||||
Transition span at (219:6,31 [1] ) (Accepts:None) - Parent: Expression block at (219:6,31 [5] )
|
||||
Code span at (220:6,32 [4] ) (Accepts:NonWhitespace) - Parent: Expression block at (219:6,31 [5] )
|
||||
Markup span at (224:6,36 [4] ) (Accepts:None) - Parent: Tag block at (224:6,36 [4] )
|
||||
Markup span at (228:6,40 [2] ) (Accepts:None) - Parent: Markup block at (196:6,8 [34] )
|
||||
Code span at (230:7,0 [45] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
Transition span at (275:9,8 [1] ) (Accepts:None) - Parent: Markup block at (275:9,8 [27] )
|
||||
MetaCode span at (276:9,9 [1] ) (Accepts:Any) - Parent: Markup block at (275:9,8 [27] )
|
||||
Markup span at (277:9,10 [14] ) (Accepts:Any) - Parent: Markup block at (275:9,8 [27] )
|
||||
Transition span at (291:9,24 [1] ) (Accepts:None) - Parent: Expression block at (291:9,24 [5] )
|
||||
Code span at (292:9,25 [4] ) (Accepts:NonWhitespace) - Parent: Expression block at (291:9,24 [5] )
|
||||
Markup span at (296:9,29 [6] ) (Accepts:None) - Parent: Markup block at (275:9,8 [27] )
|
||||
Code span at (302:10,0 [36] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
Code span at (338:11,34 [1] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
Code span at (339:11,35 [42] ) (Accepts:Any) - Parent: Statement block at (0:0,0 [382] )
|
||||
MetaCode span at (381:12,0 [1] ) (Accepts:None) - Parent: Statement block at (0:0,0 [382] )
|
||||
Markup span at (382:12,1 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [382] )
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
(3,35): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(7,9): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(10,9): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(12,35): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
@ -0,0 +1,214 @@
|
|||
RazorDocument - [0..382)::382 - [@{LF var time = DateTime.Now;LF if (time.ToBinary() % 2 == 0) <p>The time: @time</p>LFLF if (time.ToBinary() %3 == 0)LF // For some reason we want to render the time now?LF <p>The confusing time: @time</p>LFLF if (time.ToBinary() % 4 == 0)LF @: <p>The time: @time</p>LFLF if (time.ToBinary() % 5 == 0) @@SomeGitHubUserName <strong>Hi!</strong>LF}]
|
||||
MarkupBlock - [0..382)::382
|
||||
MarkupTextLiteral - [0..0)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
CSharpCodeBlock - [0..382)::382
|
||||
CSharpStatement - [0..382)::382
|
||||
CSharpTransition - [0..1)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpStatementBody - [1..382)::381
|
||||
RazorMetaCode - [1..2)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
LeftBrace;[{];
|
||||
CSharpCodeBlock - [2..381)::379
|
||||
CSharpStatementLiteral - [2..68)::66 - [LF var time = DateTime.Now;LF if (time.ToBinary() % 2 == 0) ] - Gen<Stmt> - AutoCompleteEditHandler;Accepts:Any,AutoComplete:[<null>];AtEOL
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Identifier;[var];
|
||||
Whitespace;[ ];
|
||||
Identifier;[time];
|
||||
Whitespace;[ ];
|
||||
Assign;[=];
|
||||
Whitespace;[ ];
|
||||
Identifier;[DateTime];
|
||||
Dot;[.];
|
||||
Identifier;[Now];
|
||||
Semicolon;[;];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[time];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[2];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [68..92)::24
|
||||
MarkupElement - [68..90)::22
|
||||
MarkupStartTag - [68..71)::3 - [<p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [71..81)::10 - [The time: ] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Text;[The];
|
||||
Whitespace;[ ];
|
||||
Text;[time:];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [81..86)::5
|
||||
CSharpImplicitExpression - [81..86)::5
|
||||
CSharpTransition - [81..82)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [82..86)::4
|
||||
CSharpCodeBlock - [82..86)::4
|
||||
CSharpExpressionLiteral - [82..86)::4 - [time] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K14
|
||||
Identifier;[time];
|
||||
MarkupEndTag - [86..90)::4 - [</p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [90..92)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [92..196)::104 - [LF if (time.ToBinary() %3 == 0)LF // For some reason we want to render the time now?LF ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[time];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
IntegerLiteral;[3];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
CSharpComment;[// For some reason we want to render the time now?];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [196..230)::34
|
||||
MarkupElement - [196..228)::32
|
||||
MarkupStartTag - [196..199)::3 - [<p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [199..219)::20 - [The confusing time: ] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Text;[The];
|
||||
Whitespace;[ ];
|
||||
Text;[confusing];
|
||||
Whitespace;[ ];
|
||||
Text;[time:];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [219..224)::5
|
||||
CSharpImplicitExpression - [219..224)::5
|
||||
CSharpTransition - [219..220)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [220..224)::4
|
||||
CSharpCodeBlock - [220..224)::4
|
||||
CSharpExpressionLiteral - [220..224)::4 - [time] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K14
|
||||
Identifier;[time];
|
||||
MarkupEndTag - [224..228)::4 - [</p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [228..230)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [230..275)::45 - [LF if (time.ToBinary() % 4 == 0)LF ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[time];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[4];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [275..302)::27
|
||||
MarkupTransition - [275..276)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
RazorMetaCode - [276..277)::1 - Gen<None> - SpanEditHandler;Accepts:Any
|
||||
Colon;[:];
|
||||
MarkupTextLiteral - [277..291)::14 - [ <p>The time: ] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Whitespace;[ ];
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
Text;[The];
|
||||
Whitespace;[ ];
|
||||
Text;[time:];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [291..296)::5
|
||||
CSharpImplicitExpression - [291..296)::5
|
||||
CSharpTransition - [291..292)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [292..296)::4
|
||||
CSharpCodeBlock - [292..296)::4
|
||||
CSharpExpressionLiteral - [292..296)::4 - [time] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K14
|
||||
Identifier;[time];
|
||||
MarkupTextLiteral - [296..302)::6 - [</p>LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [302..338)::36 - [LF if (time.ToBinary() % 5 == 0) ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[time];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[5];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
CSharpEphemeralTextLiteral - [338..339)::1 - [@] - Gen<None> - SpanEditHandler;Accepts:Any
|
||||
Transition;[@];
|
||||
CSharpStatementLiteral - [339..381)::42 - [@SomeGitHubUserName <strong>Hi!</strong>LF] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
Transition;[@];
|
||||
Identifier;[SomeGitHubUserName];
|
||||
Whitespace;[ ];
|
||||
LessThan;[<];
|
||||
Identifier;[strong];
|
||||
GreaterThan;[>];
|
||||
Identifier;[Hi];
|
||||
Not;[!];
|
||||
LessThan;[<];
|
||||
Slash;[/];
|
||||
Identifier;[strong];
|
||||
GreaterThan;[>];
|
||||
NewLine;[LF];
|
||||
RazorMetaCode - [381..382)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
RightBrace;[}];
|
||||
MarkupTextLiteral - [382..382)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
(1,9): Error RZ1008: Expected a "{" but found a ")". Block statements must be enclosed in "{" and "}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{}":
|
||||
|
||||
@if(isLoggedIn) {
|
||||
<p>Hello, @user</p>
|
||||
}
|
||||
|
|
@ -1,30 +1,3 @@
|
|||
(1,10): Error RZ1008: Expected a "{" but found a "<". Block statements must be enclosed in "{" and "}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{}":
|
||||
|
||||
@if(isLoggedIn) {
|
||||
<p>Hello, @user</p>
|
||||
}
|
||||
(1,34): Error RZ1008: Expected a "{" but found a "<". Block statements must be enclosed in "{" and "}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{}":
|
||||
|
||||
@if(isLoggedIn) {
|
||||
<p>Hello, @user</p>
|
||||
}
|
||||
(1,50): Error RZ1008: Expected a "{" but found a "<". Block statements must be enclosed in "{" and "}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{}":
|
||||
|
||||
@if(isLoggedIn) {
|
||||
<p>Hello, @user</p>
|
||||
}
|
||||
(1,10): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(1,34): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(1,50): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
|
|||
|
|
@ -0,0 +1,8 @@
|
|||
Markup span at (0:0,0 [2] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [147] )
|
||||
Transition span at (2:1,0 [1] ) (Accepts:None) - Parent: Directive block at (2:1,0 [145] )
|
||||
MetaCode span at (3:1,1 [9] ) (Accepts:None) - Parent: Directive block at (2:1,0 [145] )
|
||||
None span at (12:1,10 [1] ) (Accepts:AllWhitespace) - Parent: Directive block at (2:1,0 [145] )
|
||||
MetaCode span at (13:1,11 [1] ) (Accepts:None) - Parent: Directive block at (2:1,0 [145] )
|
||||
Code span at (14:1,12 [130] ) (Accepts:Any) - Parent: Directive block at (2:1,0 [145] )
|
||||
MetaCode span at (144:6,0 [3] ) (Accepts:None) - Parent: Directive block at (2:1,0 [145] )
|
||||
Markup span at (147:7,0 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [147] )
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
RazorDocument - [0..147)::147 - [LF@functions {LF string GetAnnouncmentText(string message)LF {LF if (message.Length > 0) return "Anouncement: " + message;LF }LF}LF]
|
||||
MarkupBlock - [0..147)::147
|
||||
MarkupTextLiteral - [0..2)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
CSharpCodeBlock - [2..147)::145
|
||||
RazorDirective - [2..147)::145 - Directive:{functions;CodeBlock;Unrestricted}
|
||||
CSharpTransition - [2..3)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
RazorDirectiveBody - [3..147)::144
|
||||
RazorMetaCode - [3..12)::9 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Identifier;[functions];
|
||||
CSharpCodeBlock - [12..147)::135
|
||||
UnclassifiedTextLiteral - [12..13)::1 - [ ] - Gen<None> - SpanEditHandler;Accepts:AllWhitespace
|
||||
Whitespace;[ ];
|
||||
RazorMetaCode - [13..14)::1 - Gen<None> - AutoCompleteEditHandler;Accepts:None,AutoComplete:[<null>];AtEnd
|
||||
LeftBrace;[{];
|
||||
CSharpCodeBlock - [14..144)::130
|
||||
CSharpStatementLiteral - [14..144)::130 - [LF string GetAnnouncmentText(string message)LF {LF if (message.Length > 0) return "Anouncement: " + message;LF }LF] - Gen<Stmt> - CodeBlockEditHandler;Accepts:Any;CodeBlock
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[string];
|
||||
Whitespace;[ ];
|
||||
Identifier;[GetAnnouncmentText];
|
||||
LeftParenthesis;[(];
|
||||
Keyword;[string];
|
||||
Whitespace;[ ];
|
||||
Identifier;[message];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
LeftBrace;[{];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[message];
|
||||
Dot;[.];
|
||||
Identifier;[Length];
|
||||
Whitespace;[ ];
|
||||
GreaterThan;[>];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Keyword;[return];
|
||||
Whitespace;[ ];
|
||||
StringLiteral;["Anouncement: "];
|
||||
Whitespace;[ ];
|
||||
Plus;[+];
|
||||
Whitespace;[ ];
|
||||
Identifier;[message];
|
||||
Semicolon;[;];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
RightBrace;[}];
|
||||
NewLine;[LF];
|
||||
RazorMetaCode - [144..147)::3 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
RightBrace;[}];
|
||||
NewLine;[LF];
|
||||
MarkupTextLiteral - [147..147)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
Markup span at (0:0,0 [2] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [408] )
|
||||
Transition span at (2:1,0 [1] ) (Accepts:None) - Parent: Directive block at (2:1,0 [406] )
|
||||
MetaCode span at (3:1,1 [9] ) (Accepts:None) - Parent: Directive block at (2:1,0 [406] )
|
||||
None span at (12:1,10 [1] ) (Accepts:AllWhitespace) - Parent: Directive block at (2:1,0 [406] )
|
||||
MetaCode span at (13:1,11 [1] ) (Accepts:None) - Parent: Directive block at (2:1,0 [406] )
|
||||
Code span at (14:1,12 [88] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Markup span at (102:4,32 [3] ) (Accepts:None) - Parent: Tag block at (102:4,32 [3] )
|
||||
Markup span at (105:4,35 [9] ) (Accepts:Any) - Parent: Markup block at (102:4,32 [26] )
|
||||
Transition span at (114:4,44 [1] ) (Accepts:None) - Parent: Expression block at (114:4,44 [8] )
|
||||
Code span at (115:4,45 [7] ) (Accepts:NonWhitespace) - Parent: Expression block at (114:4,44 [8] )
|
||||
Markup span at (122:4,52 [4] ) (Accepts:None) - Parent: Tag block at (122:4,52 [4] )
|
||||
Markup span at (126:4,56 [2] ) (Accepts:None) - Parent: Markup block at (102:4,32 [26] )
|
||||
Code span at (128:5,0 [78] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Markup span at (206:8,12 [3] ) (Accepts:None) - Parent: Tag block at (206:8,12 [3] )
|
||||
Markup span at (209:8,15 [16] ) (Accepts:Any) - Parent: Markup block at (206:8,12 [25] )
|
||||
Markup span at (225:8,31 [4] ) (Accepts:None) - Parent: Tag block at (225:8,31 [4] )
|
||||
Markup span at (229:8,35 [2] ) (Accepts:None) - Parent: Markup block at (206:8,12 [25] )
|
||||
Code span at (231:9,0 [61] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Transition span at (292:11,12 [1] ) (Accepts:None) - Parent: Markup block at (292:11,12 [27] )
|
||||
MetaCode span at (293:11,13 [1] ) (Accepts:Any) - Parent: Markup block at (292:11,12 [27] )
|
||||
Markup span at (294:11,14 [14] ) (Accepts:Any) - Parent: Markup block at (292:11,12 [27] )
|
||||
Transition span at (308:11,28 [1] ) (Accepts:None) - Parent: Expression block at (308:11,28 [5] )
|
||||
Code span at (309:11,29 [4] ) (Accepts:NonWhitespace) - Parent: Expression block at (308:11,28 [5] )
|
||||
Markup span at (313:11,33 [6] ) (Accepts:None) - Parent: Markup block at (292:11,12 [27] )
|
||||
Code span at (319:12,0 [31] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Code span at (350:13,29 [1] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Code span at (351:13,30 [20] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
Markup span at (371:13,50 [8] ) (Accepts:None) - Parent: Tag block at (371:13,50 [8] )
|
||||
Markup span at (379:13,58 [0] ) (Accepts:Any) - Parent: Markup block at (371:13,50 [27] )
|
||||
Transition span at (379:13,58 [1] ) (Accepts:None) - Parent: Expression block at (379:13,58 [8] )
|
||||
Code span at (380:13,59 [7] ) (Accepts:NonWhitespace) - Parent: Expression block at (379:13,58 [8] )
|
||||
Markup span at (387:13,66 [9] ) (Accepts:None) - Parent: Tag block at (387:13,66 [9] )
|
||||
Markup span at (396:13,75 [2] ) (Accepts:None) - Parent: Markup block at (371:13,50 [27] )
|
||||
Code span at (398:14,0 [7] ) (Accepts:Any) - Parent: Statement block at (14:1,12 [391] )
|
||||
MetaCode span at (405:15,0 [3] ) (Accepts:None) - Parent: Directive block at (2:1,0 [406] )
|
||||
Markup span at (408:16,0 [0] ) (Accepts:Any) - Parent: Markup block at (0:0,0 [408] )
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
(5,33): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(9,13): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(12,13): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
(14,30): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
@ -0,0 +1,208 @@
|
|||
RazorDocument - [0..408)::408 - [LF@functions {LF string GetAnnouncmentText(string message)LF {LF if (message.Length > 0) <p>Message: @message</p>LFLF if (message == null)LF // Nothing to renderLF <p>Message was null</p>LFLF if (DateTime.Now.ToBinary() % 2 == 0)LF @: <p>The time: @time</p>LFLF if (message != null) @@SomeGitHubUserName <strong>@message</strong>LF }LF}LF]
|
||||
MarkupBlock - [0..408)::408
|
||||
MarkupTextLiteral - [0..2)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
CSharpCodeBlock - [2..408)::406
|
||||
RazorDirective - [2..408)::406 - Directive:{functions;CodeBlock;Unrestricted} [RZ1008(102:4,32 [1] ), RZ1008(206:8,12 [1] ), RZ1008(292:11,12 [2] ), RZ1008(350:13,29 [2] )]
|
||||
CSharpTransition - [2..3)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
RazorDirectiveBody - [3..408)::405
|
||||
RazorMetaCode - [3..12)::9 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Identifier;[functions];
|
||||
CSharpCodeBlock - [12..408)::396
|
||||
UnclassifiedTextLiteral - [12..13)::1 - [ ] - Gen<None> - SpanEditHandler;Accepts:AllWhitespace
|
||||
Whitespace;[ ];
|
||||
RazorMetaCode - [13..14)::1 - Gen<None> - AutoCompleteEditHandler;Accepts:None,AutoComplete:[<null>];AtEnd
|
||||
LeftBrace;[{];
|
||||
CSharpCodeBlock - [14..405)::391
|
||||
CSharpStatementLiteral - [14..102)::88 - [LF string GetAnnouncmentText(string message)LF {LF if (message.Length > 0) ] - Gen<Stmt> - CodeBlockEditHandler;Accepts:Any;CodeBlock
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[string];
|
||||
Whitespace;[ ];
|
||||
Identifier;[GetAnnouncmentText];
|
||||
LeftParenthesis;[(];
|
||||
Keyword;[string];
|
||||
Whitespace;[ ];
|
||||
Identifier;[message];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
LeftBrace;[{];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[message];
|
||||
Dot;[.];
|
||||
Identifier;[Length];
|
||||
Whitespace;[ ];
|
||||
GreaterThan;[>];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [102..128)::26
|
||||
MarkupElement - [102..126)::24
|
||||
MarkupStartTag - [102..105)::3 - [<p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [105..114)::9 - [Message: ] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Text;[Message:];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [114..122)::8
|
||||
CSharpImplicitExpression - [114..122)::8
|
||||
CSharpTransition - [114..115)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [115..122)::7
|
||||
CSharpCodeBlock - [115..122)::7
|
||||
CSharpExpressionLiteral - [115..122)::7 - [message] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K15
|
||||
Identifier;[message];
|
||||
MarkupEndTag - [122..126)::4 - [</p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [126..128)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [128..206)::78 - [LF if (message == null)LF // Nothing to renderLF ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[message];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
Keyword;[null];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
CSharpComment;[// Nothing to render];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [206..231)::25
|
||||
MarkupElement - [206..229)::23
|
||||
MarkupStartTag - [206..209)::3 - [<p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [209..225)::16 - [Message was null] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Text;[Message];
|
||||
Whitespace;[ ];
|
||||
Text;[was];
|
||||
Whitespace;[ ];
|
||||
Text;[null];
|
||||
MarkupEndTag - [225..229)::4 - [</p>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [229..231)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [231..292)::61 - [LF if (DateTime.Now.ToBinary() % 2 == 0)LF ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[DateTime];
|
||||
Dot;[.];
|
||||
Identifier;[Now];
|
||||
Dot;[.];
|
||||
Identifier;[ToBinary];
|
||||
LeftParenthesis;[(];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
Modulo;[%];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[2];
|
||||
Whitespace;[ ];
|
||||
Equals;[==];
|
||||
Whitespace;[ ];
|
||||
IntegerLiteral;[0];
|
||||
RightParenthesis;[)];
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [292..319)::27
|
||||
MarkupTransition - [292..293)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
RazorMetaCode - [293..294)::1 - Gen<None> - SpanEditHandler;Accepts:Any
|
||||
Colon;[:];
|
||||
MarkupTextLiteral - [294..308)::14 - [ <p>The time: ] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Whitespace;[ ];
|
||||
OpenAngle;[<];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
Text;[The];
|
||||
Whitespace;[ ];
|
||||
Text;[time:];
|
||||
Whitespace;[ ];
|
||||
CSharpCodeBlock - [308..313)::5
|
||||
CSharpImplicitExpression - [308..313)::5
|
||||
CSharpTransition - [308..309)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [309..313)::4
|
||||
CSharpCodeBlock - [309..313)::4
|
||||
CSharpExpressionLiteral - [309..313)::4 - [time] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K15
|
||||
Identifier;[time];
|
||||
MarkupTextLiteral - [313..319)::6 - [</p>LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[p];
|
||||
CloseAngle;[>];
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [319..350)::31 - [LF if (message != null) ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
NewLine;[LF];
|
||||
Whitespace;[ ];
|
||||
Keyword;[if];
|
||||
Whitespace;[ ];
|
||||
LeftParenthesis;[(];
|
||||
Identifier;[message];
|
||||
Whitespace;[ ];
|
||||
NotEqual;[!=];
|
||||
Whitespace;[ ];
|
||||
Keyword;[null];
|
||||
RightParenthesis;[)];
|
||||
Whitespace;[ ];
|
||||
CSharpEphemeralTextLiteral - [350..351)::1 - [@] - Gen<None> - SpanEditHandler;Accepts:Any
|
||||
Transition;[@];
|
||||
CSharpStatementLiteral - [351..371)::20 - [@SomeGitHubUserName ] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
Transition;[@];
|
||||
Identifier;[SomeGitHubUserName];
|
||||
Whitespace;[ ];
|
||||
MarkupBlock - [371..398)::27
|
||||
MarkupElement - [371..396)::25
|
||||
MarkupStartTag - [371..379)::8 - [<strong>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
Text;[strong];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [379..379)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
CSharpCodeBlock - [379..387)::8
|
||||
CSharpImplicitExpression - [379..387)::8
|
||||
CSharpTransition - [379..380)::1 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
Transition;[@];
|
||||
CSharpImplicitExpressionBody - [380..387)::7
|
||||
CSharpCodeBlock - [380..387)::7
|
||||
CSharpExpressionLiteral - [380..387)::7 - [message] - Gen<Expr> - ImplicitExpressionEditHandler;Accepts:NonWhitespace;ImplicitExpression[RTD];K15
|
||||
Identifier;[message];
|
||||
MarkupEndTag - [387..396)::9 - [</strong>] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
OpenAngle;[<];
|
||||
ForwardSlash;[/];
|
||||
Text;[strong];
|
||||
CloseAngle;[>];
|
||||
MarkupTextLiteral - [396..398)::2 - [LF] - Gen<Markup> - SpanEditHandler;Accepts:None
|
||||
NewLine;[LF];
|
||||
CSharpStatementLiteral - [398..405)::7 - [ }LF] - Gen<Stmt> - SpanEditHandler;Accepts:Any
|
||||
Whitespace;[ ];
|
||||
RightBrace;[}];
|
||||
NewLine;[LF];
|
||||
RazorMetaCode - [405..408)::3 - Gen<None> - SpanEditHandler;Accepts:None
|
||||
RightBrace;[}];
|
||||
NewLine;[LF];
|
||||
MarkupTextLiteral - [408..408)::0 - [] - Gen<Markup> - SpanEditHandler;Accepts:Any
|
||||
Marker;[];
|
||||
|
|
@ -1,12 +1,3 @@
|
|||
(1,2): Error RZ1035: Missing close angle for tag helper 'p'.
|
||||
(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing.
|
||||
(1,21): Error RZ1008: Expected a "{" but found a "<". Block statements must be enclosed in "{" and "}". You cannot use single-statement control-flow statements in CSHTML pages. For example, the following is not allowed:
|
||||
|
||||
@if(isLoggedIn)
|
||||
<p>Hello, @user</p>
|
||||
|
||||
Instead, wrap the contents of the block in "{}":
|
||||
|
||||
@if(isLoggedIn) {
|
||||
<p>Hello, @user</p>
|
||||
}
|
||||
(1,21): Error RZ1008: Single-statement control-flow statements in Razor documents statements cannot contain markup. Markup should be enclosed in "{" and "}".
|
||||
|
|
|
|||
Loading…
Reference in New Issue