From 5e57e9f2359149ec126ab595027b93de1ceaa902 Mon Sep 17 00:00:00 2001 From: Ajay Bhargav Baaskaran Date: Fri, 23 Jun 2017 11:15:25 -0700 Subject: [PATCH] Make IntermediateNodeBuilder internal (#1455) --- .../AssemblyAttributeInjectionPass.cs | 11 ++++--- .../InstrumentationPass.cs | 30 +++++++++---------- .../ModelExpressionPass.cs | 11 ++++--- .../PagesPropertyInjectionPass.cs | 22 +++++++------- .../ViewComponentTagHelperPass.cs | 11 ++++--- .../Intermediate/IntermediateNodeBuilder.cs | 2 +- 6 files changed, 40 insertions(+), 47 deletions(-) diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/AssemblyAttributeInjectionPass.cs b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/AssemblyAttributeInjectionPass.cs index ac3e8b4eea..6657b950a9 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/AssemblyAttributeInjectionPass.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/AssemblyAttributeInjectionPass.cs @@ -52,12 +52,11 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions Debug.Assert(index >= 0); var pageAttribute = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(pageAttribute) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = attribute, - }); + pageAttribute.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = attribute, + }); documentNode.Children.Insert(index, pageAttribute); } diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/InstrumentationPass.cs b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/InstrumentationPass.cs index 65c5d558df..7907afd6b8 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/InstrumentationPass.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/InstrumentationPass.cs @@ -31,24 +31,22 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions var endContextMethodName = "EndContext"; /* ORIGINAL: EndContextMethodName */ var beginNode = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(beginNode) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = string.Format("{0}({1}, {2}, {3});", - beginContextMethodName, - item.Source.AbsoluteIndex.ToString(CultureInfo.InvariantCulture), - item.Source.Length.ToString(CultureInfo.InvariantCulture), - item.IsLiteral ? "true" : "false") - }); + beginNode.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = string.Format("{0}({1}, {2}, {3});", + beginContextMethodName, + item.Source.AbsoluteIndex.ToString(CultureInfo.InvariantCulture), + item.Source.Length.ToString(CultureInfo.InvariantCulture), + item.IsLiteral ? "true" : "false") + }); var endNode = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(endNode) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = string.Format("{0}();", endContextMethodName) - }); + endNode.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = string.Format("{0}();", endContextMethodName) + }); var nodeIndex = item.Parent.Children.IndexOf(item.Node); item.Parent.Children.Insert(nodeIndex, beginNode); diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ModelExpressionPass.cs b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ModelExpressionPass.cs index 5491539ea1..deb7cbb766 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ModelExpressionPass.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ModelExpressionPass.cs @@ -30,9 +30,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions string.Equals(node.Descriptor.IndexerTypeName, ModelExpressionTypeName, StringComparison.Ordinal))) { var expression = new CSharpExpressionIntermediateNode(); - var builder = IntermediateNodeBuilder.Create(expression); - builder.Add(new IntermediateToken() + expression.Children.Add(new IntermediateToken() { Kind = IntermediateToken.TokenKind.CSharp, Content = "ModelExpressionProvider.CreateModelExpression(ViewData, __model => ", @@ -42,13 +41,13 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions { // A 'simple' expression will look like __model => __model.Foo - builder.Add(new IntermediateToken() + expression.Children.Add(new IntermediateToken() { Kind = IntermediateToken.TokenKind.CSharp, Content = "__model." }); - builder.Add(token); + expression.Children.Add(token); } else { @@ -61,7 +60,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions if (nestedExpression.Children[j] is IntermediateToken cSharpToken && cSharpToken.IsCSharp) { - builder.Add(cSharpToken); + expression.Children.Add(cSharpToken); } } @@ -70,7 +69,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions } } - builder.Add(new IntermediateToken() + expression.Children.Add(new IntermediateToken() { Kind = IntermediateToken.TokenKind.CSharp, Content = ")", diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/PagesPropertyInjectionPass.cs b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/PagesPropertyInjectionPass.cs index d41d7b636a..fd85d6a2bb 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/PagesPropertyInjectionPass.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/PagesPropertyInjectionPass.cs @@ -23,21 +23,19 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions var viewDataType = $"global::Microsoft.AspNetCore.Mvc.ViewFeatures.ViewDataDictionary<{modelType}>"; var vddProperty = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(vddProperty) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = $"public {viewDataType} ViewData => ({viewDataType})PageContext?.ViewData;", - }); + vddProperty.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = $"public {viewDataType} ViewData => ({viewDataType})PageContext?.ViewData;", + }); @class.Children.Add(vddProperty); var modelProperty = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(modelProperty) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = $"public {modelType} Model => ViewData.Model;", - }); + modelProperty.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = $"public {modelType} Model => ViewData.Model;", + }); @class.Children.Add(modelProperty); } diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ViewComponentTagHelperPass.cs b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ViewComponentTagHelperPass.cs index a84eba528d..96922b9a78 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ViewComponentTagHelperPass.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/ViewComponentTagHelperPass.cs @@ -49,12 +49,11 @@ namespace Microsoft.AspNetCore.Mvc.Razor.Extensions WriteClass(writer, tagHelper); var statement = new CSharpCodeIntermediateNode(); - IntermediateNodeBuilder.Create(statement) - .Add(new IntermediateToken() - { - Kind = IntermediateToken.TokenKind.CSharp, - Content = writer.GenerateCode() - }); + statement.Children.Add(new IntermediateToken() + { + Kind = IntermediateToken.TokenKind.CSharp, + Content = writer.GenerateCode() + }); @class.Children.Add(statement); } diff --git a/src/Microsoft.AspNetCore.Razor.Language/Intermediate/IntermediateNodeBuilder.cs b/src/Microsoft.AspNetCore.Razor.Language/Intermediate/IntermediateNodeBuilder.cs index 7f69639916..24e72f5065 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/Intermediate/IntermediateNodeBuilder.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/Intermediate/IntermediateNodeBuilder.cs @@ -5,7 +5,7 @@ using System; namespace Microsoft.AspNetCore.Razor.Language.Intermediate { - public abstract class IntermediateNodeBuilder + internal abstract class IntermediateNodeBuilder { public static IntermediateNodeBuilder Create(IntermediateNode root) {