Refactored attribute values IR
This commit is contained in:
parent
dcccea3004
commit
2f03a39e41
|
|
@ -93,7 +93,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions
|
|||
|
||||
public override void VisitCSharpExpression(CSharpExpressionIRNode node)
|
||||
{
|
||||
if (node.Source != null && !(node.Parent is CSharpAttributeValueIRNode))
|
||||
if (node.Source != null)
|
||||
{
|
||||
Items.Add(new InstrumentationItem(node, isLiteral: false, source: node.Source.Value));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,6 +21,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
|
||||
public abstract void WriteHtmlAttributeValue(CSharpRenderingContext context, HtmlAttributeValueIRNode node);
|
||||
|
||||
public abstract void WriteCSharpAttributeValue(CSharpRenderingContext context, CSharpAttributeValueIRNode node);
|
||||
public abstract void WriteCSharpExpressionAttributeValue(CSharpRenderingContext context, CSharpExpressionAttributeValueIRNode node);
|
||||
|
||||
public abstract void WriteCSharpStatementAttributeValue(CSharpRenderingContext context, CSharpStatementAttributeValueIRNode node);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -209,9 +209,14 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
Context.BasicWriter.WriteHtmlAttributeValue(Context, node);
|
||||
}
|
||||
|
||||
public override void VisitCSharpAttributeValue(CSharpAttributeValueIRNode node)
|
||||
public override void VisitCSharpExpressionAttributeValue(CSharpExpressionAttributeValueIRNode node)
|
||||
{
|
||||
Context.BasicWriter.WriteCSharpAttributeValue(Context, node);
|
||||
Context.BasicWriter.WriteCSharpExpressionAttributeValue(Context, node);
|
||||
}
|
||||
|
||||
public override void VisitCSharpStatementAttributeValue(CSharpStatementAttributeValueIRNode node)
|
||||
{
|
||||
Context.BasicWriter.WriteCSharpStatementAttributeValue(Context, node);
|
||||
}
|
||||
|
||||
public override void VisitHtml(HtmlContentIRNode node)
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
||||
|
|
@ -153,9 +154,115 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
context.RenderChildren(node);
|
||||
}
|
||||
|
||||
public override void WriteCSharpAttributeValue(CSharpRenderingContext context, CSharpAttributeValueIRNode node)
|
||||
public override void WriteCSharpExpressionAttributeValue(CSharpRenderingContext context, CSharpExpressionAttributeValueIRNode node)
|
||||
{
|
||||
context.RenderChildren(node);
|
||||
if (context == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(context));
|
||||
}
|
||||
|
||||
if (node == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(node));
|
||||
}
|
||||
|
||||
if (node.Children.Count == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var firstChild = node.Children[0];
|
||||
if (firstChild.Source != null)
|
||||
{
|
||||
using (context.Writer.BuildLinePragma(firstChild.Source.Value))
|
||||
{
|
||||
var offset = RazorDesignTimeIRPass.DesignTimeVariable.Length + " = ".Length;
|
||||
context.Writer.WritePadding(offset, firstChild.Source, context);
|
||||
context.Writer.WriteStartAssignment(RazorDesignTimeIRPass.DesignTimeVariable);
|
||||
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
if (node.Children[i] is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
context.AddLineMappingFor(token);
|
||||
context.Writer.Write(token.Content);
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the expression like a Template or another extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
|
||||
context.Writer.WriteLine(";");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
context.Writer.WriteStartAssignment(RazorDesignTimeIRPass.DesignTimeVariable);
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
if (node.Children[i] is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
if (token.Source != null)
|
||||
{
|
||||
context.AddLineMappingFor(token);
|
||||
}
|
||||
|
||||
context.Writer.Write(token.Content);
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the expression like a Template or another extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
context.Writer.WriteLine(";");
|
||||
}
|
||||
}
|
||||
|
||||
public override void WriteCSharpStatementAttributeValue(CSharpRenderingContext context, CSharpStatementAttributeValueIRNode node)
|
||||
{
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
if (node.Children[i] is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
IDisposable linePragmaScope = null;
|
||||
var isWhitespaceStatement = string.IsNullOrWhiteSpace(token.Content);
|
||||
|
||||
if (token.Source != null)
|
||||
{
|
||||
if (!isWhitespaceStatement)
|
||||
{
|
||||
linePragmaScope = context.Writer.BuildLinePragma(token.Source.Value);
|
||||
}
|
||||
|
||||
context.Writer.WritePadding(0, token.Source.Value, context);
|
||||
}
|
||||
else if (isWhitespaceStatement)
|
||||
{
|
||||
// Don't write whitespace if there is no line mapping for it.
|
||||
continue;
|
||||
}
|
||||
|
||||
context.AddLineMappingFor(token);
|
||||
context.Writer.Write(token.Content);
|
||||
|
||||
if (linePragmaScope != null)
|
||||
{
|
||||
linePragmaScope.Dispose();
|
||||
}
|
||||
else
|
||||
{
|
||||
context.Writer.WriteLine();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the statement like an extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void WriteHtmlContent(CSharpRenderingContext context, HtmlContentIRNode node)
|
||||
|
|
|
|||
|
|
@ -147,7 +147,12 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
{
|
||||
var valuePieceCount = node
|
||||
.Children
|
||||
.Count(child => child is HtmlAttributeValueIRNode || child is CSharpAttributeValueIRNode);
|
||||
.Count(child =>
|
||||
child is HtmlAttributeValueIRNode ||
|
||||
child is CSharpExpressionAttributeValueIRNode ||
|
||||
child is CSharpStatementAttributeValueIRNode ||
|
||||
child is ExtensionIRNode);
|
||||
|
||||
var prefixLocation = node.Source.Value.AbsoluteIndex;
|
||||
var suffixLocation = node.Source.Value.AbsoluteIndex + node.Source.Value.Length - node.Suffix.Length;
|
||||
context.Writer
|
||||
|
|
@ -182,8 +187,23 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
.WriteStringLiteral(node.Prefix)
|
||||
.WriteParameterSeparator()
|
||||
.Write(prefixLocation.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator()
|
||||
.WriteStringLiteral(node.Content)
|
||||
.WriteParameterSeparator();
|
||||
|
||||
// Write content
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
if (node.Children[i] is RazorIRToken token && token.IsHtml)
|
||||
{
|
||||
context.Writer.WriteStringLiteral(token.Content);
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the attribute value like an extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
|
||||
context.Writer
|
||||
.WriteParameterSeparator()
|
||||
.Write(valueLocation.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator()
|
||||
|
|
@ -193,12 +213,48 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
.WriteEndMethodInvocation();
|
||||
}
|
||||
|
||||
public override void WriteCSharpAttributeValue(CSharpRenderingContext context, CSharpAttributeValueIRNode node)
|
||||
public override void WriteCSharpExpressionAttributeValue(CSharpRenderingContext context, CSharpExpressionAttributeValueIRNode node)
|
||||
{
|
||||
using (context.Writer.BuildLinePragma(node.Source.Value))
|
||||
{
|
||||
var prefixLocation = node.Source.Value.AbsoluteIndex;
|
||||
context.Writer
|
||||
.WriteStartMethodInvocation(WriteAttributeValueMethod)
|
||||
.WriteStringLiteral(node.Prefix)
|
||||
.WriteParameterSeparator()
|
||||
.Write(prefixLocation.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator();
|
||||
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
if (node.Children[i] is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
context.Writer.Write(token.Content);
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the expression like an extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
|
||||
var valueLocation = node.Source.Value.AbsoluteIndex + node.Prefix.Length;
|
||||
var valueLength = node.Source.Value.Length - node.Prefix.Length;
|
||||
context.Writer
|
||||
.WriteParameterSeparator()
|
||||
.Write(valueLocation.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator()
|
||||
.Write(valueLength.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator()
|
||||
.WriteBooleanLiteral(false)
|
||||
.WriteEndMethodInvocation();
|
||||
}
|
||||
}
|
||||
|
||||
public override void WriteCSharpStatementAttributeValue(CSharpRenderingContext context, CSharpStatementAttributeValueIRNode node)
|
||||
{
|
||||
const string ValueWriterName = "__razor_attribute_value_writer";
|
||||
|
||||
var expressionValue = node.Children.FirstOrDefault() as CSharpExpressionIRNode;
|
||||
var linePragma = expressionValue != null ? context.Writer.BuildLinePragma(node.Source.Value) : null;
|
||||
var prefixLocation = node.Source.Value.AbsoluteIndex;
|
||||
var valueLocation = node.Source.Value.AbsoluteIndex + node.Prefix.Length;
|
||||
var valueLength = node.Source.Value.Length - node.Prefix.Length;
|
||||
|
|
@ -209,29 +265,56 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
.Write(prefixLocation.ToString(CultureInfo.InvariantCulture))
|
||||
.WriteParameterSeparator();
|
||||
|
||||
if (expressionValue != null)
|
||||
{
|
||||
Debug.Assert(node.Children.Count == 1);
|
||||
context.Writer.WriteStartNewObject(TemplateTypeName);
|
||||
|
||||
RenderExpressionInline(context, expressionValue);
|
||||
}
|
||||
else
|
||||
using (context.Writer.BuildAsyncLambda(endLine: false, parameterNames: ValueWriterName))
|
||||
{
|
||||
// Not an expression; need to buffer the result.
|
||||
context.Writer.WriteStartNewObject(TemplateTypeName);
|
||||
context.Writer.WriteMethodInvocation(PushWriterMethod, ValueWriterName);
|
||||
|
||||
using (context.Writer.BuildAsyncLambda(endLine: false, parameterNames: ValueWriterName))
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
context.Writer.WriteMethodInvocation(PushWriterMethod, ValueWriterName);
|
||||
if (node.Children[i] is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
var isWhitespaceStatement = string.IsNullOrWhiteSpace(token.Content);
|
||||
IDisposable linePragmaScope = null;
|
||||
if (token.Source != null)
|
||||
{
|
||||
if (!isWhitespaceStatement)
|
||||
{
|
||||
linePragmaScope = context.Writer.BuildLinePragma(token.Source.Value);
|
||||
}
|
||||
|
||||
context.RenderChildren(node);
|
||||
context.Writer.WritePadding(0, token.Source.Value, context);
|
||||
}
|
||||
else if (isWhitespaceStatement)
|
||||
{
|
||||
// Don't write whitespace if there is no line mapping for it.
|
||||
continue;
|
||||
}
|
||||
|
||||
context.Writer.WriteMethodInvocation(PopWriterMethod);
|
||||
context.Writer.Write(token.Content);
|
||||
|
||||
if (linePragmaScope != null)
|
||||
{
|
||||
linePragmaScope.Dispose();
|
||||
}
|
||||
else
|
||||
{
|
||||
context.Writer.WriteLine();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// There may be something else inside the statement like an extension node.
|
||||
context.RenderNode(node.Children[i]);
|
||||
}
|
||||
}
|
||||
|
||||
context.Writer.WriteEndMethodInvocation(false);
|
||||
context.Writer.WriteMethodInvocation(PopWriterMethod);
|
||||
}
|
||||
|
||||
context.Writer.WriteEndMethodInvocation(false);
|
||||
|
||||
context.Writer
|
||||
.WriteParameterSeparator()
|
||||
.Write(valueLocation.ToString(CultureInfo.InvariantCulture))
|
||||
|
|
@ -240,8 +323,6 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
.WriteParameterSeparator()
|
||||
.WriteBooleanLiteral(false)
|
||||
.WriteEndMethodInvocation();
|
||||
|
||||
linePragma?.Dispose();
|
||||
}
|
||||
|
||||
public override void WriteHtmlContent(CSharpRenderingContext context, HtmlContentIRNode node)
|
||||
|
|
@ -283,20 +364,5 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
charactersConsumed += textToRender.Length;
|
||||
}
|
||||
}
|
||||
|
||||
protected static void RenderExpressionInline(CSharpRenderingContext context, RazorIRNode node)
|
||||
{
|
||||
if (node is RazorIRToken token && token.IsCSharp)
|
||||
{
|
||||
context.Writer.Write(token.Content);
|
||||
}
|
||||
else
|
||||
{
|
||||
for (var i = 0; i < node.Children.Count; i++)
|
||||
{
|
||||
RenderExpressionInline(context, node.Children[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -242,7 +242,8 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
public override void WriteAddTagHelperHtmlAttribute(CSharpRenderingContext context, AddTagHelperHtmlAttributeIRNode node)
|
||||
{
|
||||
var attributeValueStyleParameter = $"{HtmlAttributeValueStyleTypeName}.{node.ValueStyle}";
|
||||
var isConditionalAttributeValue = node.Children.Any(child => child is CSharpAttributeValueIRNode);
|
||||
var isConditionalAttributeValue = node.Children.Any(
|
||||
child => child is CSharpExpressionAttributeValueIRNode || child is CSharpStatementAttributeValueIRNode);
|
||||
|
||||
// All simple text and minimized attributes will be pre-allocated.
|
||||
if (isConditionalAttributeValue)
|
||||
|
|
@ -253,7 +254,11 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
// TagHelper attribute rendering is buffered by default. We do not want to write to the current
|
||||
// writer.
|
||||
var valuePieceCount = node.Children.Count(
|
||||
child => child is HtmlAttributeValueIRNode || child is CSharpAttributeValueIRNode);
|
||||
child =>
|
||||
child is HtmlAttributeValueIRNode ||
|
||||
child is CSharpExpressionAttributeValueIRNode ||
|
||||
child is CSharpStatementAttributeValueIRNode ||
|
||||
child is ExtensionIRNode);
|
||||
|
||||
context.Writer
|
||||
.WriteStartMethodInvocation(BeginAddHtmlAttributeValuesMethodName)
|
||||
|
|
|
|||
|
|
@ -295,11 +295,23 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// Children will contain a token for @false.
|
||||
public override void VisitDynamicAttributeBlock(DynamicAttributeBlockChunkGenerator chunkGenerator, Block block)
|
||||
{
|
||||
_builder.Push(new CSharpAttributeValueIRNode()
|
||||
var firstChild = block.Children.FirstOrDefault(c => c.IsBlock) as Block;
|
||||
if (firstChild == null || firstChild.Type == BlockKindInternal.Expression)
|
||||
{
|
||||
Prefix = chunkGenerator.Prefix,
|
||||
Source = BuildSourceSpanFromNode(block),
|
||||
});
|
||||
_builder.Push(new CSharpExpressionAttributeValueIRNode()
|
||||
{
|
||||
Prefix = chunkGenerator.Prefix,
|
||||
Source = BuildSourceSpanFromNode(block),
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
_builder.Push(new CSharpStatementAttributeValueIRNode()
|
||||
{
|
||||
Prefix = chunkGenerator.Prefix,
|
||||
Source = BuildSourceSpanFromNode(block),
|
||||
});
|
||||
}
|
||||
|
||||
VisitDefault(block);
|
||||
|
||||
|
|
@ -308,12 +320,32 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
public override void VisitLiteralAttributeSpan(LiteralAttributeChunkGenerator chunkGenerator, Span span)
|
||||
{
|
||||
_builder.Add(new HtmlAttributeValueIRNode()
|
||||
_builder.Push(new HtmlAttributeValueIRNode()
|
||||
{
|
||||
Prefix = chunkGenerator.Prefix,
|
||||
Content = chunkGenerator.Value,
|
||||
Source = BuildSourceSpanFromNode(span),
|
||||
});
|
||||
|
||||
var location = chunkGenerator.Value.Location;
|
||||
SourceSpan? valueSpan = null;
|
||||
if (location != SourceLocation.Undefined)
|
||||
{
|
||||
valueSpan = new SourceSpan(
|
||||
location.FilePath ?? FileName,
|
||||
location.AbsoluteIndex,
|
||||
location.LineIndex,
|
||||
location.CharacterIndex,
|
||||
chunkGenerator.Value.Value.Length);
|
||||
}
|
||||
|
||||
_builder.Add(new RazorIRToken()
|
||||
{
|
||||
Content = chunkGenerator.Value,
|
||||
Kind = RazorIRToken.TokenKind.Html,
|
||||
Source = valueSpan
|
||||
});
|
||||
|
||||
_builder.Pop();
|
||||
}
|
||||
|
||||
public override void VisitTemplateBlock(TemplateBlockChunkGenerator chunkGenerator, Block block)
|
||||
|
|
@ -354,7 +386,14 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
// We need to capture this in the IR so that we can give each piece the correct source mappings
|
||||
public override void VisitExpressionBlock(ExpressionChunkGenerator chunkGenerator, Block block)
|
||||
{
|
||||
if (_builder.Current is CSharpExpressionAttributeValueIRNode)
|
||||
{
|
||||
VisitDefault(block);
|
||||
return;
|
||||
}
|
||||
|
||||
var expressionNode = new CSharpExpressionIRNode();
|
||||
|
||||
_builder.Push(expressionNode);
|
||||
|
||||
VisitDefault(block);
|
||||
|
|
@ -394,11 +433,16 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
|
||||
public override void VisitStatementSpan(StatementChunkGenerator chunkGenerator, Span span)
|
||||
{
|
||||
var statementNode = new CSharpStatementIRNode()
|
||||
var isAttributeValue = _builder.Current is CSharpStatementAttributeValueIRNode;
|
||||
|
||||
if (!isAttributeValue)
|
||||
{
|
||||
Source = BuildSourceSpanFromNode(span)
|
||||
};
|
||||
_builder.Push(statementNode);
|
||||
var statementNode = new CSharpStatementIRNode()
|
||||
{
|
||||
Source = BuildSourceSpanFromNode(span)
|
||||
};
|
||||
_builder.Push(statementNode);
|
||||
}
|
||||
|
||||
_builder.Add(new RazorIRToken()
|
||||
{
|
||||
|
|
@ -407,7 +451,10 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
Source = BuildSourceSpanFromNode(span),
|
||||
});
|
||||
|
||||
_builder.Pop();
|
||||
if (!isAttributeValue)
|
||||
{
|
||||
_builder.Pop();
|
||||
}
|
||||
}
|
||||
|
||||
public override void VisitMarkupSpan(MarkupChunkGenerator chunkGenerator, Span span)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,31 @@
|
|||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
||||
{
|
||||
public sealed class CSharpExpressionAttributeValueIRNode : RazorIRNode
|
||||
{
|
||||
public override ItemCollection Annotations => ReadOnlyItemCollection.Empty;
|
||||
|
||||
public override IList<RazorIRNode> Children { get; } = new List<RazorIRNode>();
|
||||
|
||||
public override RazorIRNode Parent { get; set; }
|
||||
|
||||
public override SourceSpan? Source { get; set; }
|
||||
|
||||
public string Prefix { get; set; }
|
||||
|
||||
public override void Accept(RazorIRNodeVisitor visitor)
|
||||
{
|
||||
if (visitor == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(visitor));
|
||||
}
|
||||
|
||||
visitor.VisitCSharpExpressionAttributeValue(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@ using System.Collections.Generic;
|
|||
|
||||
namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
||||
{
|
||||
public sealed class CSharpAttributeValueIRNode : RazorIRNode
|
||||
public sealed class CSharpStatementAttributeValueIRNode : RazorIRNode
|
||||
{
|
||||
public override ItemCollection Annotations => ReadOnlyItemCollection.Empty;
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
throw new ArgumentNullException(nameof(visitor));
|
||||
}
|
||||
|
||||
visitor.VisitCSharpAttributeValue(this);
|
||||
visitor.VisitCSharpStatementAttributeValue(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -10,7 +10,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
{
|
||||
public override ItemCollection Annotations => ReadOnlyItemCollection.Empty;
|
||||
|
||||
public override IList<RazorIRNode> Children { get; } = EmptyArray;
|
||||
public override IList<RazorIRNode> Children { get; } = new List<RazorIRNode>();
|
||||
|
||||
public override RazorIRNode Parent { get; set; }
|
||||
|
||||
|
|
@ -18,8 +18,6 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
|
||||
public string Prefix { get; set; }
|
||||
|
||||
public string Content { get; set; }
|
||||
|
||||
public override void Accept(RazorIRNodeVisitor visitor)
|
||||
{
|
||||
if (visitor == null)
|
||||
|
|
|
|||
|
|
@ -54,7 +54,12 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
VisitDefault(node);
|
||||
}
|
||||
|
||||
public virtual void VisitCSharpAttributeValue(CSharpAttributeValueIRNode node)
|
||||
public virtual void VisitCSharpExpressionAttributeValue(CSharpExpressionAttributeValueIRNode node)
|
||||
{
|
||||
VisitDefault(node);
|
||||
}
|
||||
|
||||
public virtual void VisitCSharpStatementAttributeValue(CSharpStatementAttributeValueIRNode node)
|
||||
{
|
||||
VisitDefault(node);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,9 +30,8 @@ Document -
|
|||
HtmlContent - (0:0,0 [4] Basic.cshtml)
|
||||
RazorIRToken - (0:0,0 [4] Basic.cshtml) - Html - <div
|
||||
HtmlAttribute - (4:0,4 [25] Basic.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (12:0,12 [16] Basic.cshtml) -
|
||||
CSharpExpression - (13:0,13 [15] Basic.cshtml)
|
||||
RazorIRToken - (13:0,13 [15] Basic.cshtml) - CSharp - this.ToString()
|
||||
CSharpExpressionAttributeValue - (12:0,12 [16] Basic.cshtml) -
|
||||
RazorIRToken - (13:0,13 [15] Basic.cshtml) - CSharp - this.ToString()
|
||||
HtmlContent - (29:0,29 [24] Basic.cshtml)
|
||||
RazorIRToken - (29:0,29 [1] Basic.cshtml) - Html - >
|
||||
RazorIRToken - (30:0,30 [23] Basic.cshtml) - Html - \n Hello world\n
|
||||
|
|
@ -47,13 +46,11 @@ Document -
|
|||
HtmlContent - (123:7,0 [2] Basic.cshtml)
|
||||
RazorIRToken - (123:7,0 [2] Basic.cshtml) - Html - <p
|
||||
HtmlAttribute - (125:7,2 [34] Basic.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (133:7,10 [25] Basic.cshtml) -
|
||||
CSharpStatement - (134:7,11 [18] Basic.cshtml)
|
||||
RazorIRToken - (134:7,11 [18] Basic.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpStatementAttributeValue - (133:7,10 [25] Basic.cshtml) -
|
||||
RazorIRToken - (134:7,11 [18] Basic.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpExpression - (153:7,30 [3] Basic.cshtml)
|
||||
RazorIRToken - (153:7,30 [3] Basic.cshtml) - CSharp - cls
|
||||
CSharpStatement - (156:7,33 [2] Basic.cshtml)
|
||||
RazorIRToken - (156:7,33 [2] Basic.cshtml) - CSharp - }
|
||||
RazorIRToken - (156:7,33 [2] Basic.cshtml) - CSharp - }
|
||||
HtmlContent - (159:7,36 [5] Basic.cshtml)
|
||||
RazorIRToken - (159:7,36 [3] Basic.cshtml) - Html - />
|
||||
RazorIRToken - (162:7,39 [2] Basic.cshtml) - Html - \n
|
||||
|
|
|
|||
|
|
@ -54,11 +54,13 @@ Write(string.Format("{0}", "Hello"));
|
|||
|
||||
#line default
|
||||
#line hidden
|
||||
BeginContext(153, 3, false);
|
||||
#line 8 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Basic.cshtml"
|
||||
Write(cls);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
EndContext();
|
||||
#line 8 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Basic.cshtml"
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,9 +17,8 @@ Document -
|
|||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - EndContext();
|
||||
HtmlAttribute - (4:0,4 [25] Basic.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (12:0,12 [16] Basic.cshtml) -
|
||||
CSharpExpression - (13:0,13 [15] Basic.cshtml)
|
||||
RazorIRToken - (13:0,13 [15] Basic.cshtml) - CSharp - this.ToString()
|
||||
CSharpExpressionAttributeValue - (12:0,12 [16] Basic.cshtml) -
|
||||
RazorIRToken - (13:0,13 [15] Basic.cshtml) - CSharp - this.ToString()
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - BeginContext(29, 24, true);
|
||||
HtmlContent - (29:0,29 [24] Basic.cshtml)
|
||||
|
|
@ -51,13 +50,15 @@ Document -
|
|||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - EndContext();
|
||||
HtmlAttribute - (125:7,2 [34] Basic.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (133:7,10 [25] Basic.cshtml) -
|
||||
CSharpStatement - (134:7,11 [18] Basic.cshtml)
|
||||
RazorIRToken - (134:7,11 [18] Basic.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpStatementAttributeValue - (133:7,10 [25] Basic.cshtml) -
|
||||
RazorIRToken - (134:7,11 [18] Basic.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - BeginContext(153, 3, false);
|
||||
CSharpExpression - (153:7,30 [3] Basic.cshtml)
|
||||
RazorIRToken - (153:7,30 [3] Basic.cshtml) - CSharp - cls
|
||||
CSharpStatement - (156:7,33 [2] Basic.cshtml)
|
||||
RazorIRToken - (156:7,33 [2] Basic.cshtml) - CSharp - }
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - EndContext();
|
||||
RazorIRToken - (156:7,33 [2] Basic.cshtml) - CSharp - }
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - BeginContext(159, 5, true);
|
||||
HtmlContent - (159:7,36 [5] Basic.cshtml)
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
||||
using Xunit;
|
||||
|
||||
|
|
@ -405,6 +406,147 @@ if (true) { }
|
|||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpExpressionAttributeValue_RendersCorrectly()
|
||||
{
|
||||
var writer = new DesignTimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
||||
var content = "<input checked=\"hello-world @false\" />";
|
||||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
context.CodeDocument = codeDocument;
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpExpressionAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpExpressionAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#line 1 ""test.cshtml""
|
||||
__o = false;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpStatementAttributeValue_RendersCorrectly()
|
||||
{
|
||||
var writer = new DesignTimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
||||
var content = "<input checked=\"hello-world @if(@true){ }\" />";
|
||||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
context.CodeDocument = codeDocument;
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpStatementAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpStatementAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#line 1 ""test.cshtml""
|
||||
if(@true){ }
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpStatementAttributeValue_WithExpression_RendersCorrectly()
|
||||
{
|
||||
var writer = new DesignTimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
||||
var content = "<input checked=\"hello-world @if(@true){ @false }\" />";
|
||||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
context.CodeDocument = codeDocument;
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpStatementAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpStatementAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"#line 1 ""test.cshtml""
|
||||
if(@true){
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
Render Node - CSharpExpressionIRNode
|
||||
#line 1 ""test.cshtml""
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
",
|
||||
csharp,
|
||||
ignoreLineEndingDifferences: true);
|
||||
}
|
||||
|
||||
private static CSharpRenderingContext GetCSharpRenderingContext(BasicWriter writer)
|
||||
{
|
||||
var options = RazorCodeGenerationOptions.CreateDefault();
|
||||
var codeWriter = new Legacy.CSharpCodeWriter();
|
||||
var context = new CSharpRenderingContext()
|
||||
{
|
||||
Writer = codeWriter,
|
||||
Options = options,
|
||||
BasicWriter = writer,
|
||||
RenderChildren = n =>
|
||||
{
|
||||
codeWriter.WriteLine("Render Children");
|
||||
},
|
||||
RenderNode = n =>
|
||||
{
|
||||
codeWriter.WriteLine($"Render Node - {n.GetType().Name}");
|
||||
}
|
||||
};
|
||||
|
||||
return context;
|
||||
}
|
||||
|
||||
private static DocumentIRNode Lower(RazorCodeDocument codeDocument)
|
||||
{
|
||||
var engine = RazorEngine.Create();
|
||||
|
||||
return Lower(codeDocument, engine);
|
||||
}
|
||||
|
||||
private static DocumentIRNode Lower(RazorCodeDocument codeDocument, RazorEngine engine)
|
||||
{
|
||||
for (var i = 0; i < engine.Phases.Count; i++)
|
||||
{
|
||||
var phase = engine.Phases[i];
|
||||
phase.Execute(codeDocument);
|
||||
|
||||
if (phase is IRazorIRLoweringPhase)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var irDocument = codeDocument.GetIRDocument();
|
||||
Assert.NotNull(irDocument);
|
||||
|
||||
return irDocument;
|
||||
}
|
||||
|
||||
private class MyExtensionIRNode : ExtensionIRNode
|
||||
{
|
||||
public override IList<RazorIRNode> Children => throw new NotImplementedException();
|
||||
|
|
|
|||
|
|
@ -543,7 +543,7 @@ EndWriteAttribute();
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpAttributeValue_RendersCorrectly()
|
||||
public void WriteCSharpExpressionAttributeValue_RendersCorrectly()
|
||||
{
|
||||
var writer = new RuntimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
|
@ -552,10 +552,10 @@ EndWriteAttribute();
|
|||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpAttributeValueIRNode;
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpExpressionAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpAttributeValue(context, node);
|
||||
writer.WriteCSharpExpressionAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
|
|
@ -571,7 +571,7 @@ WriteAttributeValue("" "", 27, false, 28, 6, false);
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpAttributeValue_NonExpression_BuffersResult()
|
||||
public void WriteCSharpStatementAttributeValue_BuffersResult()
|
||||
{
|
||||
var writer = new RuntimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
|
@ -579,18 +579,23 @@ WriteAttributeValue("" "", 27, false, 28, 6, false);
|
|||
var content = "<input checked=\"hello-world @if(@true){ }\" />";
|
||||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
context.CodeDocument = codeDocument;
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpAttributeValueIRNode;
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpStatementAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpAttributeValue(context, node);
|
||||
writer.WriteCSharpStatementAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"WriteAttributeValue("" "", 27, new Microsoft.AspNetCore.Mvc.Razor.HelperResult(async(__razor_attribute_value_writer) => {
|
||||
PushWriter(__razor_attribute_value_writer);
|
||||
Render Children
|
||||
#line 1 ""test.cshtml""
|
||||
if(@true){ }
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
PopWriter();
|
||||
}
|
||||
), 28, 13, false);
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpAttributeValue_RendersCorrectly()
|
||||
public void WriteCSharpExpressionAttributeValue_RendersCorrectly()
|
||||
{
|
||||
var writer = new TagHelperHtmlAttributeRuntimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
|
@ -43,10 +43,10 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration
|
|||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpAttributeValueIRNode;
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpExpressionAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpAttributeValue(context, node);
|
||||
writer.WriteCSharpExpressionAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
|
|
@ -62,7 +62,7 @@ AddHtmlAttributeValue("" "", 27, false, 28, 6, false);
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void WriteCSharpAttributeValue_NonExpression_BuffersResult()
|
||||
public void WriteCSharpStatementAttributeValue_BuffersResult()
|
||||
{
|
||||
var writer = new TagHelperHtmlAttributeRuntimeBasicWriter();
|
||||
var context = GetCSharpRenderingContext(writer);
|
||||
|
|
@ -70,18 +70,23 @@ AddHtmlAttributeValue("" "", 27, false, 28, 6, false);
|
|||
var content = "<input checked=\"hello-world @if(@true){ }\" />";
|
||||
var sourceDocument = TestRazorSourceDocument.Create(content);
|
||||
var codeDocument = RazorCodeDocument.Create(sourceDocument);
|
||||
context.CodeDocument = codeDocument;
|
||||
var irDocument = Lower(codeDocument);
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpAttributeValueIRNode;
|
||||
var node = irDocument.Children.OfType<HtmlAttributeIRNode>().Single().Children[1] as CSharpStatementAttributeValueIRNode;
|
||||
|
||||
// Act
|
||||
writer.WriteCSharpAttributeValue(context, node);
|
||||
writer.WriteCSharpStatementAttributeValue(context, node);
|
||||
|
||||
// Assert
|
||||
var csharp = context.Writer.Builder.ToString();
|
||||
Assert.Equal(
|
||||
@"AddHtmlAttributeValue("" "", 27, new Microsoft.AspNetCore.Mvc.Razor.HelperResult(async(__razor_attribute_value_writer) => {
|
||||
PushWriter(__razor_attribute_value_writer);
|
||||
Render Children
|
||||
#line 1 ""test.cshtml""
|
||||
if(@true){ }
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
PopWriter();
|
||||
}
|
||||
), 28, 13, false);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Razor.Language.Legacy;
|
||||
using Microsoft.AspNetCore.Razor.Language.Intermediate;
|
||||
using Xunit;
|
||||
|
|
@ -145,7 +144,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
node: n,
|
||||
valueValidators: new Action<RazorIRNode>[]
|
||||
{
|
||||
value => CSharpAttributeValue(string.Empty, "Hello", value),
|
||||
value => CSharpExpressionAttributeValue(string.Empty, "Hello", value),
|
||||
value => LiteralAttributeValue(" ", "World", value)
|
||||
}),
|
||||
n => Html(@" />
|
||||
|
|
@ -226,7 +225,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
"val",
|
||||
HtmlAttributeValueStyle.DoubleQuotes,
|
||||
c,
|
||||
v => CSharpAttributeValue(string.Empty, "Hello", v),
|
||||
v => CSharpExpressionAttributeValue(string.Empty, "Hello", v),
|
||||
v => LiteralAttributeValue(" ", "World", v))));
|
||||
}
|
||||
|
||||
|
|
@ -270,7 +269,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
"val",
|
||||
HtmlAttributeValueStyle.DoubleQuotes,
|
||||
c,
|
||||
v => CSharpAttributeValue(string.Empty, "Hello", v),
|
||||
v => CSharpExpressionAttributeValue(string.Empty, "Hello", v),
|
||||
v => LiteralAttributeValue(" ", "World", v))));
|
||||
}
|
||||
|
||||
|
|
@ -316,7 +315,7 @@ namespace Microsoft.AspNetCore.Razor.Language
|
|||
"val",
|
||||
HtmlAttributeValueStyle.DoubleQuotes,
|
||||
c2,
|
||||
v => CSharpAttributeValue(string.Empty, "Hello", v),
|
||||
v => CSharpExpressionAttributeValue(string.Empty, "Hello", v),
|
||||
v => LiteralAttributeValue(" ", "World", v))),
|
||||
c1 => Html(Environment.NewLine, c1)),
|
||||
n => TagHelperFieldDeclaration(n, "SpanTagHelper"));
|
||||
|
|
|
|||
|
|
@ -131,11 +131,12 @@ Document -
|
|||
RazorIRToken - (705:19,13 [10] ComplexTagHelpers.cshtml) - Html - \n
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - time - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (197:8,17 [7] ComplexTagHelpers.cshtml) - - Current
|
||||
HtmlAttributeValue - (204:8,24 [6] ComplexTagHelpers.cshtml) - - Time:
|
||||
CSharpAttributeValue - (210:8,30 [14] ComplexTagHelpers.cshtml) -
|
||||
CSharpExpression - (212:8,32 [12] ComplexTagHelpers.cshtml)
|
||||
RazorIRToken - (212:8,32 [12] ComplexTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (197:8,17 [7] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (197:8,17 [7] ComplexTagHelpers.cshtml) - Html - Current
|
||||
HtmlAttributeValue - (204:8,24 [6] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (205:8,25 [5] ComplexTagHelpers.cshtml) - Html - Time:
|
||||
CSharpExpressionAttributeValue - (210:8,30 [14] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (212:8,32 [12] ComplexTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (719:20,12 [10] ComplexTagHelpers.cshtml)
|
||||
RazorIRToken - (719:20,12 [10] ComplexTagHelpers.cshtml) - Html - \n
|
||||
TagHelper - (729:21,8 [181] ComplexTagHelpers.cshtml) - p - TagMode.StartTagAndEndTag
|
||||
|
|
|
|||
|
|
@ -140,11 +140,12 @@ Document -
|
|||
RazorIRToken - (707:20,0 [8] ComplexTagHelpers.cshtml) - Html -
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - time - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (197:8,17 [7] ComplexTagHelpers.cshtml) - - Current
|
||||
HtmlAttributeValue - (204:8,24 [6] ComplexTagHelpers.cshtml) - - Time:
|
||||
CSharpAttributeValue - (210:8,30 [14] ComplexTagHelpers.cshtml) -
|
||||
CSharpExpression - (212:8,32 [12] ComplexTagHelpers.cshtml)
|
||||
RazorIRToken - (212:8,32 [12] ComplexTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (197:8,17 [7] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (197:8,17 [7] ComplexTagHelpers.cshtml) - Html - Current
|
||||
HtmlAttributeValue - (204:8,24 [6] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (205:8,25 [5] ComplexTagHelpers.cshtml) - Html - Time:
|
||||
CSharpExpressionAttributeValue - (210:8,30 [14] ComplexTagHelpers.cshtml) -
|
||||
RazorIRToken - (212:8,32 [12] ComplexTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (719:20,12 [10] ComplexTagHelpers.cshtml)
|
||||
RazorIRToken - (719:20,12 [10] ComplexTagHelpers.cshtml) - Html - \n
|
||||
TagHelper - (729:21,8 [181] ComplexTagHelpers.cshtml) - p - TagMode.StartTagAndEndTag
|
||||
|
|
|
|||
|
|
@ -17,9 +17,8 @@ Document -
|
|||
HtmlContent - (72:4,4 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (72:4,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (74:4,6 [13] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (82:4,14 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (83:4,15 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (83:4,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
CSharpExpressionAttributeValue - (82:4,14 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (83:4,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlContent - (87:4,19 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (87:4,19 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (90:4,22 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -27,10 +26,10 @@ Document -
|
|||
HtmlContent - (96:5,4 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (96:5,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (98:5,6 [17] ConditionalAttributes.cshtml) - class=" - "
|
||||
HtmlAttributeValue - (106:5,14 [3] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpAttributeValue - (109:5,17 [5] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (111:5,19 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (111:5,19 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (106:5,14 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (106:5,14 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
CSharpExpressionAttributeValue - (109:5,17 [5] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (111:5,19 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlContent - (115:5,23 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (115:5,23 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (118:5,26 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -38,10 +37,10 @@ Document -
|
|||
HtmlContent - (124:6,4 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (124:6,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (126:6,6 [17] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (134:6,14 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (135:6,15 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (135:6,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (138:6,18 [4] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpExpressionAttributeValue - (134:6,14 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (135:6,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (138:6,18 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (139:6,19 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
HtmlContent - (143:6,23 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (143:6,23 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (146:6,26 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -50,9 +49,8 @@ Document -
|
|||
RazorIRToken - (152:7,4 [6] ConditionalAttributes.cshtml) - Html - <input
|
||||
RazorIRToken - (158:7,10 [16] ConditionalAttributes.cshtml) - Html - type="checkbox"
|
||||
HtmlAttribute - (174:7,26 [14] ConditionalAttributes.cshtml) - checked=" - "
|
||||
CSharpAttributeValue - (184:7,36 [3] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (185:7,37 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (185:7,37 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
CSharpExpressionAttributeValue - (184:7,36 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (185:7,37 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlContent - (188:7,40 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (188:7,40 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (191:7,43 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -61,10 +59,10 @@ Document -
|
|||
RazorIRToken - (197:8,4 [6] ConditionalAttributes.cshtml) - Html - <input
|
||||
RazorIRToken - (203:8,10 [16] ConditionalAttributes.cshtml) - Html - type="checkbox"
|
||||
HtmlAttribute - (219:8,26 [18] ConditionalAttributes.cshtml) - checked=" - "
|
||||
HtmlAttributeValue - (229:8,36 [3] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpAttributeValue - (232:8,39 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (234:8,41 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (234:8,41 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlAttributeValue - (229:8,36 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (229:8,36 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
CSharpExpressionAttributeValue - (232:8,39 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (234:8,41 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlContent - (237:8,44 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (237:8,44 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (240:8,47 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -72,13 +70,11 @@ Document -
|
|||
HtmlContent - (246:9,4 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (246:9,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (248:9,6 [34] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (256:9,14 [25] ConditionalAttributes.cshtml) -
|
||||
CSharpStatement - (257:9,15 [18] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (257:9,15 [18] ConditionalAttributes.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpStatementAttributeValue - (256:9,14 [25] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (257:9,15 [18] ConditionalAttributes.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpExpression - (276:9,34 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (276:9,34 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
CSharpStatement - (279:9,37 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (279:9,37 [2] ConditionalAttributes.cshtml) - CSharp - }
|
||||
RazorIRToken - (279:9,37 [2] ConditionalAttributes.cshtml) - CSharp - }
|
||||
HtmlContent - (282:9,40 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (282:9,40 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
CSharpStatement - (285:9,43 [6] ConditionalAttributes.cshtml)
|
||||
|
|
@ -92,9 +88,8 @@ Document -
|
|||
HtmlContent - (315:11,4 [7] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (315:11,4 [7] ConditionalAttributes.cshtml) - Html - <script
|
||||
HtmlAttribute - (322:11,11 [52] ConditionalAttributes.cshtml) - src=" - "
|
||||
CSharpAttributeValue - (328:11,17 [45] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (329:11,18 [44] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (329:11,18 [44] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/jquery-1.6.2.min.js")
|
||||
CSharpExpressionAttributeValue - (328:11,17 [45] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (329:11,18 [44] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/jquery-1.6.2.min.js")
|
||||
HtmlContent - (374:11,63 [33] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (374:11,63 [23] ConditionalAttributes.cshtml) - Html - type="text/javascript"
|
||||
RazorIRToken - (397:11,86 [1] ConditionalAttributes.cshtml) - Html - >
|
||||
|
|
@ -104,9 +99,8 @@ Document -
|
|||
HtmlContent - (413:12,4 [7] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (413:12,4 [7] ConditionalAttributes.cshtml) - Html - <script
|
||||
HtmlAttribute - (420:12,11 [68] ConditionalAttributes.cshtml) - src=" - "
|
||||
CSharpAttributeValue - (426:12,17 [61] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (427:12,18 [60] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (427:12,18 [60] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")
|
||||
CSharpExpressionAttributeValue - (426:12,17 [61] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (427:12,18 [60] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")
|
||||
HtmlContent - (488:12,79 [33] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (488:12,79 [23] ConditionalAttributes.cshtml) - Html - type="text/javascript"
|
||||
RazorIRToken - (511:12,102 [1] ConditionalAttributes.cshtml) - Html - >
|
||||
|
|
|
|||
|
|
@ -14,29 +14,28 @@ Document -
|
|||
RazorIRToken - (68:4,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (72:4,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (74:4,6 [13] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (82:4,14 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (83:4,15 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (83:4,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
CSharpExpressionAttributeValue - (82:4,14 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (83:4,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlContent - (87:4,19 [11] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (87:4,19 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (90:4,22 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
RazorIRToken - (92:5,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (96:5,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (98:5,6 [17] ConditionalAttributes.cshtml) - class=" - "
|
||||
HtmlAttributeValue - (106:5,14 [3] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpAttributeValue - (109:5,17 [5] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (111:5,19 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (111:5,19 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (106:5,14 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (106:5,14 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
CSharpExpressionAttributeValue - (109:5,17 [5] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (111:5,19 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlContent - (115:5,23 [11] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (115:5,23 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (118:5,26 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
RazorIRToken - (120:6,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (124:6,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (126:6,6 [17] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (134:6,14 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (135:6,15 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (135:6,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (138:6,18 [4] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpExpressionAttributeValue - (134:6,14 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (135:6,15 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
HtmlAttributeValue - (138:6,18 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (139:6,19 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
HtmlContent - (143:6,23 [31] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (143:6,23 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (146:6,26 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
|
|
@ -44,9 +43,8 @@ Document -
|
|||
RazorIRToken - (152:7,4 [6] ConditionalAttributes.cshtml) - Html - <input
|
||||
RazorIRToken - (158:7,10 [16] ConditionalAttributes.cshtml) - Html - type="checkbox"
|
||||
HtmlAttribute - (174:7,26 [14] ConditionalAttributes.cshtml) - checked=" - "
|
||||
CSharpAttributeValue - (184:7,36 [3] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (185:7,37 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (185:7,37 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
CSharpExpressionAttributeValue - (184:7,36 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (185:7,37 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlContent - (188:7,40 [31] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (188:7,40 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (191:7,43 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
|
|
@ -54,23 +52,21 @@ Document -
|
|||
RazorIRToken - (197:8,4 [6] ConditionalAttributes.cshtml) - Html - <input
|
||||
RazorIRToken - (203:8,10 [16] ConditionalAttributes.cshtml) - Html - type="checkbox"
|
||||
HtmlAttribute - (219:8,26 [18] ConditionalAttributes.cshtml) - checked=" - "
|
||||
HtmlAttributeValue - (229:8,36 [3] ConditionalAttributes.cshtml) - - foo
|
||||
CSharpAttributeValue - (232:8,39 [4] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (234:8,41 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (234:8,41 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlAttributeValue - (229:8,36 [3] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (229:8,36 [3] ConditionalAttributes.cshtml) - Html - foo
|
||||
CSharpExpressionAttributeValue - (232:8,39 [4] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (234:8,41 [2] ConditionalAttributes.cshtml) - CSharp - ch
|
||||
HtmlContent - (237:8,44 [11] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (237:8,44 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (240:8,47 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
RazorIRToken - (242:9,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (246:9,4 [2] ConditionalAttributes.cshtml) - Html - <p
|
||||
HtmlAttribute - (248:9,6 [34] ConditionalAttributes.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (256:9,14 [25] ConditionalAttributes.cshtml) -
|
||||
CSharpStatement - (257:9,15 [18] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (257:9,15 [18] ConditionalAttributes.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpStatementAttributeValue - (256:9,14 [25] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (257:9,15 [18] ConditionalAttributes.cshtml) - CSharp - if(cls != null) {
|
||||
CSharpExpression - (276:9,34 [3] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (276:9,34 [3] ConditionalAttributes.cshtml) - CSharp - cls
|
||||
CSharpStatement - (279:9,37 [2] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (279:9,37 [2] ConditionalAttributes.cshtml) - CSharp - }
|
||||
RazorIRToken - (279:9,37 [2] ConditionalAttributes.cshtml) - CSharp - }
|
||||
HtmlContent - (282:9,40 [40] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (282:9,40 [3] ConditionalAttributes.cshtml) - Html - />
|
||||
RazorIRToken - (285:9,43 [2] ConditionalAttributes.cshtml) - Html - \n
|
||||
|
|
@ -82,9 +78,8 @@ Document -
|
|||
RazorIRToken - (311:11,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (315:11,4 [7] ConditionalAttributes.cshtml) - Html - <script
|
||||
HtmlAttribute - (322:11,11 [52] ConditionalAttributes.cshtml) - src=" - "
|
||||
CSharpAttributeValue - (328:11,17 [45] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (329:11,18 [44] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (329:11,18 [44] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/jquery-1.6.2.min.js")
|
||||
CSharpExpressionAttributeValue - (328:11,17 [45] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (329:11,18 [44] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/jquery-1.6.2.min.js")
|
||||
HtmlContent - (374:11,63 [46] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (374:11,63 [23] ConditionalAttributes.cshtml) - Html - type="text/javascript"
|
||||
RazorIRToken - (397:11,86 [1] ConditionalAttributes.cshtml) - Html - >
|
||||
|
|
@ -93,9 +88,8 @@ Document -
|
|||
RazorIRToken - (409:12,0 [4] ConditionalAttributes.cshtml) - Html -
|
||||
RazorIRToken - (413:12,4 [7] ConditionalAttributes.cshtml) - Html - <script
|
||||
HtmlAttribute - (420:12,11 [68] ConditionalAttributes.cshtml) - src=" - "
|
||||
CSharpAttributeValue - (426:12,17 [61] ConditionalAttributes.cshtml) -
|
||||
CSharpExpression - (427:12,18 [60] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (427:12,18 [60] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")
|
||||
CSharpExpressionAttributeValue - (426:12,17 [61] ConditionalAttributes.cshtml) -
|
||||
RazorIRToken - (427:12,18 [60] ConditionalAttributes.cshtml) - CSharp - Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")
|
||||
HtmlContent - (488:12,79 [152] ConditionalAttributes.cshtml)
|
||||
RazorIRToken - (488:12,79 [23] ConditionalAttributes.cshtml) - Html - type="text/javascript"
|
||||
RazorIRToken - (511:12,102 [1] ConditionalAttributes.cshtml) - Html - >
|
||||
|
|
|
|||
|
|
@ -48,11 +48,12 @@ Document -
|
|||
CreateTagHelper - - TestNamespace.ATagHelperMultipleSelectors
|
||||
CreateTagHelper - - TestNamespace.CatchAllTagHelper
|
||||
AddTagHelperHtmlAttribute - - href - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (153:5,9 [2] CssSelectorTagHelperAttributes.cshtml) - - ~/
|
||||
CSharpAttributeValue - (155:5,11 [6] CssSelectorTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (156:5,12 [5] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (156:5,12 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlAttributeValue - (161:5,17 [12] CssSelectorTagHelperAttributes.cshtml) - - ?hello=world
|
||||
HtmlAttributeValue - (153:5,9 [2] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (153:5,9 [2] CssSelectorTagHelperAttributes.cshtml) - Html - ~/
|
||||
CSharpExpressionAttributeValue - (155:5,11 [6] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (156:5,12 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlAttributeValue - (161:5,17 [12] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (161:5,17 [12] CssSelectorTagHelperAttributes.cshtml) - Html - ?hello=world
|
||||
HtmlContent - (191:5,47 [35] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (191:5,47 [2] CssSelectorTagHelperAttributes.cshtml) - Html - \n
|
||||
RazorIRToken - (193:6,0 [2] CssSelectorTagHelperAttributes.cshtml) - Html - <a
|
||||
|
|
@ -67,10 +68,10 @@ Document -
|
|||
RazorIRToken - (243:7,17 [11] CssSelectorTagHelperAttributes.cshtml) - Html - 1 TagHelper
|
||||
CreateTagHelper - - TestNamespace.CatchAllTagHelper
|
||||
AddTagHelperHtmlAttribute - - href - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (234:7,8 [2] CssSelectorTagHelperAttributes.cshtml) - - ~/
|
||||
CSharpAttributeValue - (236:7,10 [6] CssSelectorTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (237:7,11 [5] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (237:7,11 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlAttributeValue - (234:7,8 [2] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (234:7,8 [2] CssSelectorTagHelperAttributes.cshtml) - Html - ~/
|
||||
CSharpExpressionAttributeValue - (236:7,10 [6] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (237:7,11 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlContent - (258:7,32 [2] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (258:7,32 [2] CssSelectorTagHelperAttributes.cshtml) - Html - \n
|
||||
TagHelper - (260:8,0 [46] CssSelectorTagHelperAttributes.cshtml) - a - TagMode.StartTagAndEndTag
|
||||
|
|
@ -87,10 +88,10 @@ Document -
|
|||
RazorIRToken - (340:9,32 [11] CssSelectorTagHelperAttributes.cshtml) - Html - 1 TagHelper
|
||||
CreateTagHelper - - TestNamespace.CatchAllTagHelper
|
||||
AddTagHelperHtmlAttribute - - href - HtmlAttributeValueStyle.SingleQuotes
|
||||
HtmlAttributeValue - (317:9,9 [14] CssSelectorTagHelperAttributes.cshtml) - - ~/?hello=world
|
||||
CSharpAttributeValue - (331:9,23 [7] CssSelectorTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (333:9,25 [5] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (333:9,25 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlAttributeValue - (317:9,9 [14] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (317:9,9 [14] CssSelectorTagHelperAttributes.cshtml) - Html - ~/?hello=world
|
||||
CSharpExpressionAttributeValue - (331:9,23 [7] CssSelectorTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (333:9,25 [5] CssSelectorTagHelperAttributes.cshtml) - CSharp - false
|
||||
HtmlContent - (355:9,47 [2] CssSelectorTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (355:9,47 [2] CssSelectorTagHelperAttributes.cshtml) - Html - \n
|
||||
TagHelper - (357:10,0 [42] CssSelectorTagHelperAttributes.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
|
|||
|
|
@ -14,28 +14,26 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) - - prefix
|
||||
CSharpAttributeValue - (57:2,22 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) - Html - prefix
|
||||
CSharpExpressionAttributeValue - (57:2,22 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (75:2,40 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (75:2,40 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (79:4,0 [71] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (95:4,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpStatementAttributeValue - (95:4,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (109:4,30 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (109:4,30 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (132:4,53 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (132:4,53 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
HtmlAttributeValue - (139:4,60 [7] DynamicAttributeTagHelpers.cshtml) - - suffix
|
||||
RazorIRToken - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
HtmlAttributeValue - (139:4,60 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (140:4,61 [6] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
HtmlContent - (150:4,71 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (150:4,71 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (154:6,0 [83] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
@ -50,11 +48,12 @@ Document -
|
|||
HtmlContent - (188:6,34 [7] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (188:6,34 [7] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) - - prefix
|
||||
CSharpAttributeValue - (212:6,58 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (226:6,72 [7] DynamicAttributeTagHelpers.cshtml) - - suffix
|
||||
HtmlAttributeValue - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) - Html - prefix
|
||||
CSharpExpressionAttributeValue - (212:6,58 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (226:6,72 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (227:6,73 [6] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
HtmlContent - (237:6,83 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (237:6,83 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (241:8,0 [183] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
@ -80,54 +79,45 @@ Document -
|
|||
CSharpExpression - (316:8,75 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (316:8,75 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (347:9,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpAttributeValue - (361:9,30 [45] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpressionAttributeValue - (347:9,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpStatementAttributeValue - (361:9,30 [45] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (376:9,45 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (376:9,45 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (399:9,68 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (399:9,68 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
CSharpAttributeValue - (406:9,75 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
RazorIRToken - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
CSharpExpressionAttributeValue - (406:9,75 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
HtmlContent - (424:9,93 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (424:9,93 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (428:11,0 [80] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (444:11,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpAttributeValue - (458:11,30 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (472:11,44 [7] DynamicAttributeTagHelpers.cshtml) - - static
|
||||
HtmlAttributeValue - (479:11,51 [11] DynamicAttributeTagHelpers.cshtml) - - content
|
||||
CSharpAttributeValue - (490:11,62 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
CSharpExpressionAttributeValue - (444:11,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpExpressionAttributeValue - (458:11,30 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (472:11,44 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (473:11,45 [6] DynamicAttributeTagHelpers.cshtml) - Html - static
|
||||
HtmlAttributeValue - (479:11,51 [11] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (483:11,55 [7] DynamicAttributeTagHelpers.cshtml) - Html - content
|
||||
CSharpExpressionAttributeValue - (490:11,62 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
HtmlContent - (508:11,80 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (508:11,80 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (512:13,0 [64] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (528:13,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpStatementAttributeValue - (528:13,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (542:13,30 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (542:13,30 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (565:13,53 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (565:13,53 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
RazorIRToken - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
|
|
|
|||
|
|
@ -10,28 +10,26 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) - - prefix
|
||||
CSharpAttributeValue - (57:2,22 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (51:2,16 [6] DynamicAttributeTagHelpers.cshtml) - Html - prefix
|
||||
CSharpExpressionAttributeValue - (57:2,22 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (59:2,24 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (75:2,40 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (75:2,40 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (79:4,0 [71] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (95:4,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpStatementAttributeValue - (95:4,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (96:4,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (109:4,30 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (109:4,30 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (121:4,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (132:4,53 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (132:4,53 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
HtmlAttributeValue - (139:4,60 [7] DynamicAttributeTagHelpers.cshtml) - - suffix
|
||||
RazorIRToken - (137:4,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
HtmlAttributeValue - (139:4,60 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (140:4,61 [6] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
HtmlContent - (150:4,71 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (150:4,71 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (154:6,0 [83] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
@ -46,11 +44,12 @@ Document -
|
|||
HtmlContent - (188:6,34 [7] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (188:6,34 [7] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) - - prefix
|
||||
CSharpAttributeValue - (212:6,58 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (226:6,72 [7] DynamicAttributeTagHelpers.cshtml) - - suffix
|
||||
HtmlAttributeValue - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (206:6,52 [6] DynamicAttributeTagHelpers.cshtml) - Html - prefix
|
||||
CSharpExpressionAttributeValue - (212:6,58 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (214:6,60 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (226:6,72 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (227:6,73 [6] DynamicAttributeTagHelpers.cshtml) - Html - suffix
|
||||
HtmlContent - (237:6,83 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (237:6,83 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (241:8,0 [183] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
@ -76,54 +75,45 @@ Document -
|
|||
CSharpExpression - (316:8,75 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (316:8,75 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (347:9,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpAttributeValue - (361:9,30 [45] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpressionAttributeValue - (347:9,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (348:9,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpStatementAttributeValue - (361:9,30 [45] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (363:9,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (376:9,45 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (376:9,45 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (388:9,57 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (399:9,68 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (399:9,68 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
CSharpAttributeValue - (406:9,75 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
RazorIRToken - (404:9,73 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
CSharpExpressionAttributeValue - (406:9,75 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (408:9,77 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
HtmlContent - (424:9,93 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (424:9,93 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (428:11,0 [80] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (444:11,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpAttributeValue - (458:11,30 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (472:11,44 [7] DynamicAttributeTagHelpers.cshtml) - - static
|
||||
HtmlAttributeValue - (479:11,51 [11] DynamicAttributeTagHelpers.cshtml) - - content
|
||||
CSharpAttributeValue - (490:11,62 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpExpression - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
CSharpExpressionAttributeValue - (444:11,16 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (445:11,17 [13] DynamicAttributeTagHelpers.cshtml) - CSharp - long.MinValue
|
||||
CSharpExpressionAttributeValue - (458:11,30 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (460:11,32 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (472:11,44 [7] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (473:11,45 [6] DynamicAttributeTagHelpers.cshtml) - Html - static
|
||||
HtmlAttributeValue - (479:11,51 [11] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (483:11,55 [7] DynamicAttributeTagHelpers.cshtml) - Html - content
|
||||
CSharpExpressionAttributeValue - (490:11,62 [14] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (492:11,64 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - int.MaxValue
|
||||
HtmlContent - (508:11,80 [4] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (508:11,80 [4] DynamicAttributeTagHelpers.cshtml) - Html - \n\n
|
||||
TagHelper - (512:13,0 [64] DynamicAttributeTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
AddTagHelperHtmlAttribute - - unbound - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (528:13,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
CSharpStatement - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpStatementAttributeValue - (528:13,16 [44] DynamicAttributeTagHelpers.cshtml) -
|
||||
RazorIRToken - (529:13,17 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - if (true) {
|
||||
CSharpExpression - (542:13,30 [12] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (542:13,30 [12] DynamicAttributeTagHelpers.cshtml) - CSharp - string.Empty
|
||||
CSharpStatement - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (554:13,42 [10] DynamicAttributeTagHelpers.cshtml) - CSharp - } else {
|
||||
CSharpExpression - (565:13,53 [5] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (565:13,53 [5] DynamicAttributeTagHelpers.cshtml) - CSharp - false
|
||||
CSharpStatement - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml)
|
||||
RazorIRToken - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
RazorIRToken - (570:13,58 [2] DynamicAttributeTagHelpers.cshtml) - CSharp - }
|
||||
|
|
|
|||
|
|
@ -28,9 +28,8 @@ Document -
|
|||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
CreateTagHelper - - TestNamespace.CatchAllTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (130:7,14 [21] EnumTagHelpers.cshtml) -
|
||||
CSharpExpression - (131:7,15 [20] EnumTagHelpers.cshtml)
|
||||
RazorIRToken - (131:7,15 [20] EnumTagHelpers.cshtml) - CSharp - MyEnum.MySecondValue
|
||||
CSharpExpressionAttributeValue - (130:7,14 [21] EnumTagHelpers.cshtml) -
|
||||
RazorIRToken - (131:7,15 [20] EnumTagHelpers.cshtml) - CSharp - MyEnum.MySecondValue
|
||||
HtmlContent - (155:7,39 [2] EnumTagHelpers.cshtml)
|
||||
RazorIRToken - (155:7,39 [2] EnumTagHelpers.cshtml) - Html - \n
|
||||
TagHelper - (157:8,0 [25] EnumTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
|
|||
|
|
@ -24,9 +24,8 @@ Document -
|
|||
CreateTagHelper - - TestNamespace.InputTagHelper
|
||||
CreateTagHelper - - TestNamespace.CatchAllTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (130:7,14 [21] EnumTagHelpers.cshtml) -
|
||||
CSharpExpression - (131:7,15 [20] EnumTagHelpers.cshtml)
|
||||
RazorIRToken - (131:7,15 [20] EnumTagHelpers.cshtml) - CSharp - MyEnum.MySecondValue
|
||||
CSharpExpressionAttributeValue - (130:7,14 [21] EnumTagHelpers.cshtml) -
|
||||
RazorIRToken - (131:7,15 [20] EnumTagHelpers.cshtml) - CSharp - MyEnum.MySecondValue
|
||||
HtmlContent - (155:7,39 [2] EnumTagHelpers.cshtml)
|
||||
RazorIRToken - (155:7,39 [2] EnumTagHelpers.cshtml) - Html - \n
|
||||
TagHelper - (157:8,0 [25] EnumTagHelpers.cshtml) - input - TagMode.SelfClosing
|
||||
|
|
|
|||
|
|
@ -15,17 +15,14 @@ Document -
|
|||
RazorIRToken - (13:0,13 [21] InlineBlocks.cshtml) - Html - (string link) {\n
|
||||
RazorIRToken - (34:1,4 [2] InlineBlocks.cshtml) - Html - <a
|
||||
HtmlAttribute - (36:1,6 [59] InlineBlocks.cshtml) - href=" - "
|
||||
CSharpAttributeValue - (43:1,13 [51] InlineBlocks.cshtml) -
|
||||
CSharpStatement - (44:1,14 [19] InlineBlocks.cshtml)
|
||||
RazorIRToken - (44:1,14 [19] InlineBlocks.cshtml) - CSharp - if(link != null) {
|
||||
CSharpStatementAttributeValue - (43:1,13 [51] InlineBlocks.cshtml) -
|
||||
RazorIRToken - (44:1,14 [19] InlineBlocks.cshtml) - CSharp - if(link != null) {
|
||||
CSharpExpression - (64:1,34 [4] InlineBlocks.cshtml)
|
||||
RazorIRToken - (64:1,34 [4] InlineBlocks.cshtml) - CSharp - link
|
||||
CSharpStatement - (68:1,38 [10] InlineBlocks.cshtml)
|
||||
RazorIRToken - (68:1,38 [10] InlineBlocks.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (68:1,38 [10] InlineBlocks.cshtml) - CSharp - } else {
|
||||
HtmlContent - (84:1,54 [1] InlineBlocks.cshtml)
|
||||
RazorIRToken - (84:1,54 [1] InlineBlocks.cshtml) - Html - #
|
||||
CSharpStatement - (92:1,62 [2] InlineBlocks.cshtml)
|
||||
RazorIRToken - (92:1,62 [2] InlineBlocks.cshtml) - CSharp - }
|
||||
RazorIRToken - (92:1,62 [2] InlineBlocks.cshtml) - CSharp - }
|
||||
HtmlContent - (95:1,65 [6] InlineBlocks.cshtml)
|
||||
RazorIRToken - (95:1,65 [3] InlineBlocks.cshtml) - Html - />
|
||||
RazorIRToken - (98:1,68 [3] InlineBlocks.cshtml) - Html - \n}
|
||||
|
|
|
|||
|
|
@ -11,17 +11,14 @@ Document -
|
|||
RazorIRToken - (13:0,13 [21] InlineBlocks.cshtml) - Html - (string link) {\n
|
||||
RazorIRToken - (34:1,4 [2] InlineBlocks.cshtml) - Html - <a
|
||||
HtmlAttribute - (36:1,6 [58] InlineBlocks.cshtml) - href=" - "
|
||||
CSharpAttributeValue - (43:1,13 [50] InlineBlocks.cshtml) -
|
||||
CSharpStatement - (44:1,14 [19] InlineBlocks.cshtml)
|
||||
RazorIRToken - (44:1,14 [19] InlineBlocks.cshtml) - CSharp - if(link != null) {
|
||||
CSharpStatementAttributeValue - (43:1,13 [50] InlineBlocks.cshtml) -
|
||||
RazorIRToken - (44:1,14 [19] InlineBlocks.cshtml) - CSharp - if(link != null) {
|
||||
CSharpExpression - (64:1,34 [4] InlineBlocks.cshtml)
|
||||
RazorIRToken - (64:1,34 [4] InlineBlocks.cshtml) - CSharp - link
|
||||
CSharpStatement - (68:1,38 [9] InlineBlocks.cshtml)
|
||||
RazorIRToken - (68:1,38 [9] InlineBlocks.cshtml) - CSharp - } else {
|
||||
RazorIRToken - (68:1,38 [9] InlineBlocks.cshtml) - CSharp - } else {
|
||||
HtmlContent - (84:1,54 [1] InlineBlocks.cshtml)
|
||||
RazorIRToken - (84:1,54 [1] InlineBlocks.cshtml) - Html - #
|
||||
CSharpStatement - (92:1,62 [2] InlineBlocks.cshtml)
|
||||
RazorIRToken - (92:1,62 [2] InlineBlocks.cshtml) - CSharp - }
|
||||
RazorIRToken - (92:1,62 [2] InlineBlocks.cshtml) - CSharp - }
|
||||
HtmlContent - (95:1,65 [6] InlineBlocks.cshtml)
|
||||
RazorIRToken - (95:1,65 [3] InlineBlocks.cshtml) - Html - />
|
||||
RazorIRToken - (98:1,68 [3] InlineBlocks.cshtml) - Html - \n}
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@ Document -
|
|||
RazorIRToken - (99:6,19 [6] Sections.cshtml) - Html - \n
|
||||
RazorIRToken - (105:7,4 [4] Sections.cshtml) - Html - <div
|
||||
HtmlAttribute - (109:7,8 [20] Sections.cshtml) - class=" - "
|
||||
HtmlAttributeValue - (117:7,16 [4] Sections.cshtml) - - some
|
||||
CSharpAttributeValue - (121:7,20 [7] Sections.cshtml) -
|
||||
CSharpExpression - (123:7,22 [5] Sections.cshtml)
|
||||
RazorIRToken - (123:7,22 [5] Sections.cshtml) - CSharp - thing
|
||||
HtmlAttributeValue - (117:7,16 [4] Sections.cshtml) -
|
||||
RazorIRToken - (117:7,16 [4] Sections.cshtml) - Html - some
|
||||
CSharpExpressionAttributeValue - (121:7,20 [7] Sections.cshtml) -
|
||||
RazorIRToken - (123:7,22 [5] Sections.cshtml) - CSharp - thing
|
||||
HtmlContent - (129:7,28 [29] Sections.cshtml)
|
||||
RazorIRToken - (129:7,28 [1] Sections.cshtml) - Html - >
|
||||
RazorIRToken - (130:7,29 [20] Sections.cshtml) - Html - This is in Section 2
|
||||
|
|
|
|||
|
|
@ -15,10 +15,10 @@ Document -
|
|||
RazorIRToken - (99:6,19 [6] Sections.cshtml) - Html - \n
|
||||
RazorIRToken - (105:7,4 [4] Sections.cshtml) - Html - <div
|
||||
HtmlAttribute - (109:7,8 [20] Sections.cshtml) - class=" - "
|
||||
HtmlAttributeValue - (117:7,16 [4] Sections.cshtml) - - some
|
||||
CSharpAttributeValue - (121:7,20 [7] Sections.cshtml) -
|
||||
CSharpExpression - (123:7,22 [5] Sections.cshtml)
|
||||
RazorIRToken - (123:7,22 [5] Sections.cshtml) - CSharp - thing
|
||||
HtmlAttributeValue - (117:7,16 [4] Sections.cshtml) -
|
||||
RazorIRToken - (117:7,16 [4] Sections.cshtml) - Html - some
|
||||
CSharpExpressionAttributeValue - (121:7,20 [7] Sections.cshtml) -
|
||||
RazorIRToken - (123:7,22 [5] Sections.cshtml) - CSharp - thing
|
||||
HtmlContent - (129:7,28 [29] Sections.cshtml)
|
||||
RazorIRToken - (129:7,28 [1] Sections.cshtml) - Html - >
|
||||
RazorIRToken - (130:7,29 [20] Sections.cshtml) - Html - This is in Section 2
|
||||
|
|
|
|||
|
|
@ -38,11 +38,12 @@ Document -
|
|||
CSharpExpression - (157:8,51 [12] TagHelpersInSection.cshtml)
|
||||
RazorIRToken - (157:8,51 [12] TagHelpersInSection.cshtml) - CSharp - DateTime.Now
|
||||
AddTagHelperHtmlAttribute - - unboundproperty - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (188:8,82 [7] TagHelpersInSection.cshtml) - - Current
|
||||
HtmlAttributeValue - (195:8,89 [6] TagHelpersInSection.cshtml) - - Time:
|
||||
CSharpAttributeValue - (201:8,95 [14] TagHelpersInSection.cshtml) -
|
||||
CSharpExpression - (203:8,97 [12] TagHelpersInSection.cshtml)
|
||||
RazorIRToken - (203:8,97 [12] TagHelpersInSection.cshtml) - CSharp - DateTime.Now
|
||||
HtmlAttributeValue - (188:8,82 [7] TagHelpersInSection.cshtml) -
|
||||
RazorIRToken - (188:8,82 [7] TagHelpersInSection.cshtml) - Html - Current
|
||||
HtmlAttributeValue - (195:8,89 [6] TagHelpersInSection.cshtml) -
|
||||
RazorIRToken - (196:8,90 [5] TagHelpersInSection.cshtml) - Html - Time:
|
||||
CSharpExpressionAttributeValue - (201:8,95 [14] TagHelpersInSection.cshtml) -
|
||||
RazorIRToken - (203:8,97 [12] TagHelpersInSection.cshtml) - CSharp - DateTime.Now
|
||||
HtmlContent - (359:11,22 [14] TagHelpersInSection.cshtml)
|
||||
RazorIRToken - (359:11,22 [6] TagHelpersInSection.cshtml) - Html - \n
|
||||
RazorIRToken - (365:12,4 [6] TagHelpersInSection.cshtml) - Html - </div>
|
||||
|
|
|
|||
|
|
@ -31,9 +31,8 @@ Document -
|
|||
HtmlContent - (409:16,33 [2] Templates.cshtml)
|
||||
RazorIRToken - (409:16,33 [2] Templates.cshtml) - Html - <p
|
||||
HtmlAttribute - (411:16,35 [14] Templates.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (419:16,43 [5] Templates.cshtml) -
|
||||
CSharpExpression - (420:16,44 [4] Templates.cshtml)
|
||||
RazorIRToken - (420:16,44 [4] Templates.cshtml) - CSharp - item
|
||||
CSharpExpressionAttributeValue - (419:16,43 [5] Templates.cshtml) -
|
||||
RazorIRToken - (420:16,44 [4] Templates.cshtml) - CSharp - item
|
||||
HtmlContent - (425:16,49 [10] Templates.cshtml)
|
||||
RazorIRToken - (425:16,49 [1] Templates.cshtml) - Html - >
|
||||
RazorIRToken - (426:16,50 [5] Templates.cshtml) - Html - Hello
|
||||
|
|
|
|||
|
|
@ -28,9 +28,8 @@ Document -
|
|||
HtmlContent - (409:16,33 [2] Templates.cshtml)
|
||||
RazorIRToken - (409:16,33 [2] Templates.cshtml) - Html - <p
|
||||
HtmlAttribute - (411:16,35 [14] Templates.cshtml) - class=" - "
|
||||
CSharpAttributeValue - (419:16,43 [5] Templates.cshtml) -
|
||||
CSharpExpression - (420:16,44 [4] Templates.cshtml)
|
||||
RazorIRToken - (420:16,44 [4] Templates.cshtml) - CSharp - item
|
||||
CSharpExpressionAttributeValue - (419:16,43 [5] Templates.cshtml) -
|
||||
RazorIRToken - (420:16,44 [4] Templates.cshtml) - CSharp - item
|
||||
HtmlContent - (425:16,49 [10] Templates.cshtml)
|
||||
RazorIRToken - (425:16,49 [1] Templates.cshtml) - Html - >
|
||||
RazorIRToken - (426:16,50 [5] Templates.cshtml) - Html - Hello
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ Document -
|
|||
RazorIRToken - (128:6,29 [11] TransitionsInTagHelperAttributes.cshtml) - Html - Body of Tag
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (109:6,10 [6] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpStatementAttributeValue - (109:6,10 [6] TransitionsInTagHelperAttributes.cshtml) -
|
||||
SetTagHelperProperty - (122:6,23 [4] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (122:6,23 [4] TransitionsInTagHelperAttributes.cshtml) - CSharp - 1337
|
||||
HtmlContent - (143:6,44 [2] TransitionsInTagHelperAttributes.cshtml)
|
||||
|
|
@ -29,9 +29,8 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (155:7,10 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
CSharpExpressionAttributeValue - (155:7,10 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
SetTagHelperProperty - (171:7,26 [2] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (171:7,26 [2] TransitionsInTagHelperAttributes.cshtml) - CSharp - 42
|
||||
HtmlContent - (179:7,34 [2] TransitionsInTagHelperAttributes.cshtml)
|
||||
|
|
@ -79,10 +78,10 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) - - custom-
|
||||
CSharpAttributeValue - (305:11,17 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
HtmlAttributeValue - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) - Html - custom-
|
||||
CSharpExpressionAttributeValue - (305:11,17 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
SetTagHelperProperty - (321:11,33 [15] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (321:11,33 [1] TransitionsInTagHelperAttributes.cshtml) - CSharp - 4
|
||||
RazorIRToken - (322:11,34 [2] TransitionsInTagHelperAttributes.cshtml) - CSharp - *
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ Document -
|
|||
RazorIRToken - (128:6,29 [11] TransitionsInTagHelperAttributes.cshtml) - Html - Body of Tag
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (109:6,10 [6] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpStatementAttributeValue - (109:6,10 [6] TransitionsInTagHelperAttributes.cshtml) -
|
||||
SetTagHelperProperty - (122:6,23 [4] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (122:6,23 [4] TransitionsInTagHelperAttributes.cshtml) - CSharp - 1337
|
||||
HtmlContent - (143:6,44 [2] TransitionsInTagHelperAttributes.cshtml)
|
||||
|
|
@ -24,9 +24,8 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
CSharpAttributeValue - (155:7,10 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
CSharpExpressionAttributeValue - (155:7,10 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (157:7,12 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
SetTagHelperProperty - (171:7,26 [2] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (171:7,26 [2] TransitionsInTagHelperAttributes.cshtml) - CSharp - 42
|
||||
HtmlContent - (179:7,34 [2] TransitionsInTagHelperAttributes.cshtml)
|
||||
|
|
@ -68,10 +67,10 @@ Document -
|
|||
TagHelperBody -
|
||||
CreateTagHelper - - TestNamespace.PTagHelper
|
||||
AddTagHelperHtmlAttribute - - class - HtmlAttributeValueStyle.DoubleQuotes
|
||||
HtmlAttributeValue - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) - - custom-
|
||||
CSharpAttributeValue - (305:11,17 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
CSharpExpression - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml)
|
||||
RazorIRToken - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
HtmlAttributeValue - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (298:11,10 [7] TransitionsInTagHelperAttributes.cshtml) - Html - custom-
|
||||
CSharpExpressionAttributeValue - (305:11,17 [9] TransitionsInTagHelperAttributes.cshtml) -
|
||||
RazorIRToken - (307:11,19 [6] TransitionsInTagHelperAttributes.cshtml) - CSharp - @class
|
||||
SetTagHelperProperty - (321:11,33 [15] TransitionsInTagHelperAttributes.cshtml) - age - Age - HtmlAttributeValueStyle.DoubleQuotes
|
||||
RazorIRToken - (321:11,33 [1] TransitionsInTagHelperAttributes.cshtml) - CSharp - 4
|
||||
RazorIRToken - (322:11,34 [2] TransitionsInTagHelperAttributes.cshtml) - CSharp - *
|
||||
|
|
|
|||
|
|
@ -10,9 +10,8 @@ Document -
|
|||
RazorIRToken - (14:1,6 [6] HtmlWithConditionalAttribute.cshtml) - Html - \n
|
||||
RazorIRToken - (20:2,4 [5] HtmlWithConditionalAttribute.cshtml) - Html - <span
|
||||
HtmlAttribute - (25:2,9 [13] HtmlWithConditionalAttribute.cshtml) - val=" - "
|
||||
CSharpAttributeValue - (31:2,15 [6] HtmlWithConditionalAttribute.cshtml) -
|
||||
CSharpExpression - (32:2,16 [5] HtmlWithConditionalAttribute.cshtml)
|
||||
RazorIRToken - (32:2,16 [5] HtmlWithConditionalAttribute.cshtml) - CSharp - Hello
|
||||
CSharpExpressionAttributeValue - (31:2,15 [6] HtmlWithConditionalAttribute.cshtml) -
|
||||
RazorIRToken - (32:2,16 [5] HtmlWithConditionalAttribute.cshtml) - CSharp - Hello
|
||||
HtmlContent - (38:2,22 [22] HtmlWithConditionalAttribute.cshtml)
|
||||
RazorIRToken - (38:2,22 [3] HtmlWithConditionalAttribute.cshtml) - Html - />
|
||||
RazorIRToken - (41:2,25 [2] HtmlWithConditionalAttribute.cshtml) - Html - \n
|
||||
|
|
|
|||
|
|
@ -31,7 +31,12 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
WriteContentNode(node, node.AccessModifier, node.Name, node.BaseType, string.Join(", ", node.Interfaces ?? new List<string>()));
|
||||
}
|
||||
|
||||
public override void VisitCSharpAttributeValue(CSharpAttributeValueIRNode node)
|
||||
public override void VisitCSharpExpressionAttributeValue(CSharpExpressionAttributeValueIRNode node)
|
||||
{
|
||||
WriteContentNode(node, node.Prefix);
|
||||
}
|
||||
|
||||
public override void VisitCSharpStatementAttributeValue(CSharpStatementAttributeValueIRNode node)
|
||||
{
|
||||
WriteContentNode(node, node.Prefix);
|
||||
}
|
||||
|
|
@ -58,7 +63,7 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
|
||||
public override void VisitHtmlAttributeValue(HtmlAttributeValueIRNode node)
|
||||
{
|
||||
WriteContentNode(node, node.Prefix, node.Content);
|
||||
WriteContentNode(node, node.Prefix);
|
||||
}
|
||||
|
||||
public override void VisitNamespaceDeclaration(NamespaceDeclarationIRNode node)
|
||||
|
|
|
|||
|
|
@ -199,14 +199,22 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
}
|
||||
}
|
||||
|
||||
public static void CSharpAttributeValue(string prefix, string expected, RazorIRNode node)
|
||||
public static void CSharpExpressionAttributeValue(string prefix, string expected, RazorIRNode node)
|
||||
{
|
||||
var attributeValue = Assert.IsType<CSharpAttributeValueIRNode>(node);
|
||||
var attributeValue = Assert.IsType<CSharpExpressionAttributeValueIRNode>(node);
|
||||
|
||||
try
|
||||
{
|
||||
var content = new StringBuilder();
|
||||
for (var i = 0; i < attributeValue.Children.Count; i++)
|
||||
{
|
||||
var token = Assert.IsType<RazorIRToken>(attributeValue.Children[i]);
|
||||
Assert.True(token.IsCSharp);
|
||||
content.Append(token.Content);
|
||||
}
|
||||
|
||||
Assert.Equal(prefix, attributeValue.Prefix);
|
||||
Children(attributeValue, n => CSharpExpression(expected, n));
|
||||
Assert.Equal(expected, content.ToString());
|
||||
}
|
||||
catch (XunitException e)
|
||||
{
|
||||
|
|
@ -217,11 +225,19 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
public static void LiteralAttributeValue(string prefix, string expected, RazorIRNode node)
|
||||
{
|
||||
var attributeValue = Assert.IsType<HtmlAttributeValueIRNode>(node);
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
var content = new StringBuilder();
|
||||
for (var i = 0; i < attributeValue.Children.Count; i++)
|
||||
{
|
||||
var token = Assert.IsType<RazorIRToken>(attributeValue.Children[i]);
|
||||
Assert.True(token.IsHtml);
|
||||
content.Append(token.Content);
|
||||
}
|
||||
|
||||
Assert.Equal(prefix, attributeValue.Prefix);
|
||||
Assert.Equal(expected, attributeValue.Content);
|
||||
Assert.Equal(expected, content.ToString());
|
||||
}
|
||||
catch (XunitException e)
|
||||
{
|
||||
|
|
@ -272,7 +288,7 @@ namespace Microsoft.AspNetCore.Razor.Language.Intermediate
|
|||
for (var i = 0; i < beginNode.Children.Count; i++)
|
||||
{
|
||||
var token = Assert.IsType<RazorIRToken>(beginNode.Children[i]);
|
||||
Assert.Equal(RazorIRToken.TokenKind.CSharp, token.Kind);
|
||||
Assert.True(token.IsCSharp);
|
||||
content.Append(token.Content);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue