175 references to WriteLine
BoundTreeGenerator (175)
BoundNodeClassWriter.cs (175)
130WriteLine("{{"); 137WriteLine("}}"); 155WriteLine("// <auto-generated />"); 156WriteLine("#nullable enable"); 159WriteLine("' <auto-generated />"); break; 209WriteLine("using {0};", nsName); break; 211WriteLine("Imports {0}", nsName); break; 222WriteLine("namespace Microsoft.CodeAnalysis.CSharp"); 226WriteLine("Namespace Microsoft.CodeAnalysis.VisualBasic"); 243WriteLine("End Namespace"); 255WriteLine("internal enum BoundKind : byte"); 258WriteLine("{0},", FixKeyword(StripBound(node.Name))); 263WriteLine("Friend Enum BoundKind as Byte"); 266WriteLine("{0}", FixKeyword(StripBound(node.Name))); 268WriteLine("End Enum"); 302WriteLine("internal {2}partial class {0} : {1}", node.Name, node.Base, abstr); 314WriteLine("Partial Friend {1}Class {0}", node.Name, abstr); 316WriteLine("Inherits {0}", node.Base); 336WriteLine("End Class"); 465WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); 472WriteLine("Validate();"); 480WriteLine(@"[Conditional(""DEBUG"")]"); 481WriteLine("private partial void Validate();"); 530WriteLine("Me._{0} = {1}", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "Nothing" : ToCamelCase(field.Name)); 537WriteLine("Validate()"); 541WriteLine("End Sub"); 546WriteLine("Private Partial Sub Validate()"); 547WriteLine("End Sub"); 601WriteLine("this.{0} = {1};", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "null" : ToCamelCase(field.Name)); 640WriteLine("Me._{0} = {1}", field.Name, FieldNullHandling(node, field.Name) == NullHandling.Always ? "Nothing" : ToCamelCase(field.Name)); 645WriteLine("Validate()"); 649WriteLine("End Sub"); 675WriteLine("RoslynDebug.Assert(!{0}.IsDefault, \"Field '{0}' cannot be null (use Null=\\\"allow\\\" in BoundNodes.xml to remove this check)\");", ToCamelCase(field.Name)); 677WriteLine("RoslynDebug.Assert({0} is object, \"Field '{0}' cannot be null (make the type nullable in BoundNodes.xml to remove this check)\");", ToCamelCase(field.Name)); 682WriteLine("Debug.Assert(Not ({0}.IsDefault), \"Field '{0}' cannot be null (use Null=\"\"allow\"\" in BoundNodes.xml to remove this check)\")", ToCamelCase(field.Name)); 684WriteLine("Debug.Assert({0} IsNot Nothing, \"Field '{0}' cannot be null (use Null=\"\"allow\"\" in BoundNodes.xml to remove this check)\")", ToCamelCase(field.Name)); 840WriteLine("public override {0}{1} {2} {{ get; }}", (IsNew(field) ? "new " : ""), field.Type, field.Name); 852WriteLine($"public new {field.Type} {field.Name} => base.{field.Name}{suppression};"); 856WriteLine("public {0}{1} {2} {{ get; }}", (IsNew(field) ? "new " : ""), field.Type, field.Name); 862WriteLine("Private {0}ReadOnly _{2} As {1}", (IsNew(field) ? "Shadows " : ""), field.Type, field.Name); 863WriteLine("Public {0}ReadOnly Property {2} As {1}", (IsNew(field) ? "Shadows " : IsPropertyOverrides(field) ? "Overrides " : ""), field.Type, field.Name); 865WriteLine("Get"); 867WriteLine("Return _{0}", field.Name); 869WriteLine("End Get"); 871WriteLine("End Property"); 885WriteLine("[DebuggerStepThrough]"); 886WriteLine("public override BoundNode? Accept(BoundTreeVisitor visitor) => visitor.Visit{0}(this);", StripBound(name)); 891WriteLine("<DebuggerStepThrough>"); 892WriteLine("Public Overrides Function Accept(visitor as BoundTreeVisitor) As BoundNode"); 894WriteLine("Return visitor.Visit{0}(Me)", StripBound(name)); 896WriteLine("End Function"); 976WriteLine(";"); 977WriteLine("result.CopyAttributes(this);"); 978WriteLine("return result;"); 981WriteLine("return this;"); 1012WriteLine(" As {0}", node.Name); 1019WriteLine(" Then"); 1024WriteLine(""); 1025WriteLine("result.CopyAttributes(Me)"); 1026WriteLine("Return result"); 1028WriteLine("End If"); 1030WriteLine("Return Me"); 1033WriteLine("End Function"); 1075WriteLine("internal abstract partial class BoundTreeVisitor<A, R>"); 1079WriteLine("[MethodImpl(MethodImplOptions.NoInlining), DebuggerStepThrough]"); 1080WriteLine("internal R VisitInternal(BoundNode node, A arg)"); 1082WriteLine("switch (node.Kind)"); 1086WriteLine("case BoundKind.{0}:", FixKeyword(StripBound(node.Name))); 1088WriteLine("return Visit{0}(({1})node, arg);", StripBound(node.Name), node.Name); 1093WriteLine("return default(R)!;"); 1098WriteLine("internal abstract partial class BoundTreeVisitor<A, R>"); 1102WriteLine($"public virtual R Visit{StripBound(node.Name)}({node.Name} node, A arg) => this.DefaultVisit(node, arg);"); 1107WriteLine("internal abstract partial class BoundTreeVisitor"); 1111WriteLine($"public virtual BoundNode? Visit{StripBound(node.Name)}({node.Name} node) => this.DefaultVisit(node);"); 1118WriteLine("Friend MustInherit Partial Class BoundTreeVisitor(Of A, R)"); 1122WriteLine("<MethodImpl(MethodImplOptions.NoInlining), DebuggerStepThrough>"); 1123WriteLine("Friend Function VisitInternal(node As BoundNode, arg As A) As R"); 1125WriteLine("Select Case node.Kind"); 1129WriteLine("Case BoundKind.{0}", FixKeyword(StripBound(node.Name))); 1131WriteLine("Return Visit{0}(CType(node, {1}), arg)", StripBound(node.Name), node.Name); 1135WriteLine("End Select"); 1136WriteLine("Return DefaultVisit(node, arg)"); 1138WriteLine("End Function"); 1142WriteLine("End Class"); 1145WriteLine("Friend MustInherit Partial Class BoundTreeVisitor(Of A, R)"); 1149WriteLine("Public Overridable Function Visit{0}(node As {1}, arg As A) As R", StripBound(node.Name), node.Name); 1151WriteLine("Return Me.DefaultVisit(node, arg)"); 1153WriteLine("End Function"); 1157WriteLine("End Class"); 1160WriteLine("Friend MustInherit Partial Class BoundTreeVisitor"); 1164WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: false)); 1166WriteLine("Return Me.DefaultVisit(node)"); 1168WriteLine("End Function"); 1172WriteLine("End Class"); 1186WriteLine("internal abstract partial class BoundTreeWalker : BoundTreeVisitor"); 1193WriteLine($"{GetVisitFunctionDeclaration(node.Name, isOverride: true)} => null;"); 1196WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1200WriteLine("this.Visit{1}(node.{0});", field.Name, IsNodeList(field.Type) ? "List" : ""); 1202WriteLine("return null;"); 1211WriteLine("Friend MustInherit Partial Class BoundTreeWalker"); 1213WriteLine("Inherits BoundTreeVisitor"); 1218WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1221WriteLine("Me.Visit{1}(node.{0})", field.Name, IsNodeList(field.Type) ? "List" : ""); 1222WriteLine("Return Nothing"); 1224WriteLine("End Function"); 1229WriteLine("End Class"); 1244WriteLine("internal sealed class BoundTreeDumperNodeProducer : BoundTreeVisitor<object?, TreeDumperNode>"); 1246WriteLine("private BoundTreeDumperNodeProducer()"); 1249WriteLine("public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null);"); 1256WriteLine("new TreeDumperNode[]"); 1278WriteLine(","); 1283WriteLine(","); 1289WriteLine(","); 1293WriteLine(""); 1298WriteLine("Array.Empty<TreeDumperNode>()"); 1300WriteLine(");"); 1307WriteLine("Friend NotInheritable Class BoundTreeDumperNodeProducer"); 1309WriteLine("Inherits BoundTreeVisitor(Of Object, TreeDumperNode)"); 1311WriteLine("Private Sub New()"); 1312WriteLine("End Sub"); 1314WriteLine("Public Shared Function MakeTree(node As BoundNode) As TreeDumperNode"); 1316WriteLine("Return (New BoundTreeDumperNodeProducer()).Visit(node, Nothing)"); 1318WriteLine("End Function"); 1323WriteLine("Public Overrides Function Visit{0}(node As {1}, arg As Object) As TreeDumperNode", StripBound(node.Name), node.Name); 1329WriteLine("New TreeDumperNode() {{"); 1342WriteLine(""); 1344WriteLine(","); 1347WriteLine("}})"); 1351WriteLine("Array.Empty(Of TreeDumperNode)())"); 1354WriteLine("End Function"); 1358WriteLine("End Class"); 1373WriteLine("internal abstract partial class BoundTreeRewriter : BoundTreeVisitor"); 1379WriteLine($"{GetVisitFunctionDeclaration(node.Name, isOverride: true)} => node;"); 1382WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1392WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.Visit{field.Type.TrimEnd('?')}(node.{field.Name});"); 1396WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitLocals(node.{field.Name});"); 1400WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitDeclaredLocalFunctions(node.{field.Name});"); 1404WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitSymbols<{elementType}>(node.{field.Name});"); 1417WriteLine("TypeSymbol? {0} = this.VisitType(node.{1});", ToCamelCase(field.Name), field.Name); 1430WriteLine(";"); 1434WriteLine("return node;"); 1446WriteLine("Friend MustInherit Partial Class BoundTreeRewriter"); 1448WriteLine("Inherits BoundTreeVisitor"); 1452WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1465WriteLine("Dim {0} as TypeSymbol = Me.VisitType(node.{1})", ToCamelCase(field.Name), field.Name); 1472WriteLine(""); 1476WriteLine("Return node"); 1480WriteLine("End Function"); 1484WriteLine("End Class"); 1503WriteLine("internal sealed partial class NullabilityRewriter : BoundTreeRewriter"); 1509WriteLine($"private readonly ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> {updatedNullabilities};"); 1510WriteLine($"private readonly NullableWalker.SnapshotManager? {snapshotManager};"); 1511WriteLine($"private readonly ImmutableDictionary<Symbol, Symbol>.Builder {remappedSymbols};"); 1514WriteLine("public NullabilityRewriter(ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> updatedNullabilities, NullableWalker.SnapshotManager? snapshotManager, ImmutableDictionary<Symbol, Symbol>.Builder remappedSymbols)"); 1516WriteLine($"{updatedNullabilities} = updatedNullabilities;"); 1517WriteLine($"{snapshotManager} = snapshotManager;"); 1518WriteLine($"{remappedSymbols} = remappedSymbols;"); 1535WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1543WriteLine($"{field.Type} {ToCamelCase(field.Name)} = GetUpdatedSymbol(node, node.{field.Name});"); 1548WriteLine($"{field.Type} {ToCamelCase(field.Name)} = GetUpdatedArray(node, node.{field.Name});"); 1563WriteLine($"{node.Name} updatedNode;"); 1570WriteLine("else"); 1574WriteLine("return updatedNode;"); 1580WriteLine("return node;"); 1585WriteLine("return updatedNode;"); 1592WriteLine(";"); 1598=> WriteLine($"if ({(inverted ? "!" : "")}{updatedNullabilities}.TryGetValue(node, out (NullabilityInfo Info, TypeSymbol? Type) infoAndType))"); 1604WriteLine(";"); 1641WriteLine($"updatedNode.TopLevelNullability = infoAndType.Info;"); 1911WriteLine($"{field.Type} {ToCamelCase(field.Name)} = node.{field.Name};"); 1915WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitList(node.{field.Name});"); 1919WriteLine($"{field.Type} {ToCamelCase(field.Name)} = ({field.Type})this.Visit(node.{field.Name});"); 1927WriteLine("Dim {0} As {2} = node.{1}", ToCamelCase(field.Name), field.Name, field.Type); 1931WriteLine("Dim {0} As {2} = Me.VisitList(node.{1})", ToCamelCase(field.Name), field.Name, field.Type); 1935WriteLine("Dim {0} As {2} = DirectCast(Me.Visit(node.{1}), {2})", ToCamelCase(field.Name), field.Name, field.Type);