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"); 978WriteLine(";"); 979WriteLine("result.CopyAttributes(this);"); 980WriteLine("return result;"); 983WriteLine("return this;"); 1014WriteLine(" As {0}", node.Name); 1021WriteLine(" Then"); 1026WriteLine(""); 1027WriteLine("result.CopyAttributes(Me)"); 1028WriteLine("Return result"); 1030WriteLine("End If"); 1032WriteLine("Return Me"); 1035WriteLine("End Function"); 1077WriteLine("internal abstract partial class BoundTreeVisitor<A, R>"); 1081WriteLine("[MethodImpl(MethodImplOptions.NoInlining), DebuggerStepThrough]"); 1082WriteLine("internal R VisitInternal(BoundNode node, A arg)"); 1084WriteLine("switch (node.Kind)"); 1088WriteLine("case BoundKind.{0}:", FixKeyword(StripBound(node.Name))); 1090WriteLine("return Visit{0}(({1})node, arg);", StripBound(node.Name), node.Name); 1095WriteLine("return default(R)!;"); 1100WriteLine("internal abstract partial class BoundTreeVisitor<A, R>"); 1104WriteLine($"public virtual R Visit{StripBound(node.Name)}({node.Name} node, A arg) => this.DefaultVisit(node, arg);"); 1109WriteLine("internal abstract partial class BoundTreeVisitor"); 1113WriteLine($"public virtual BoundNode? Visit{StripBound(node.Name)}({node.Name} node) => this.DefaultVisit(node);"); 1120WriteLine("Friend MustInherit Partial Class BoundTreeVisitor(Of A, R)"); 1124WriteLine("<MethodImpl(MethodImplOptions.NoInlining), DebuggerStepThrough>"); 1125WriteLine("Friend Function VisitInternal(node As BoundNode, arg As A) As R"); 1127WriteLine("Select Case node.Kind"); 1131WriteLine("Case BoundKind.{0}", FixKeyword(StripBound(node.Name))); 1133WriteLine("Return Visit{0}(CType(node, {1}), arg)", StripBound(node.Name), node.Name); 1137WriteLine("End Select"); 1138WriteLine("Return DefaultVisit(node, arg)"); 1140WriteLine("End Function"); 1144WriteLine("End Class"); 1147WriteLine("Friend MustInherit Partial Class BoundTreeVisitor(Of A, R)"); 1151WriteLine("Public Overridable Function Visit{0}(node As {1}, arg As A) As R", StripBound(node.Name), node.Name); 1153WriteLine("Return Me.DefaultVisit(node, arg)"); 1155WriteLine("End Function"); 1159WriteLine("End Class"); 1162WriteLine("Friend MustInherit Partial Class BoundTreeVisitor"); 1166WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: false)); 1168WriteLine("Return Me.DefaultVisit(node)"); 1170WriteLine("End Function"); 1174WriteLine("End Class"); 1188WriteLine("internal abstract partial class BoundTreeWalker : BoundTreeVisitor"); 1195WriteLine($"{GetVisitFunctionDeclaration(node.Name, isOverride: true)} => null;"); 1198WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1202WriteLine("this.Visit{1}(node.{0});", field.Name, IsNodeList(field.Type) ? "List" : ""); 1204WriteLine("return null;"); 1213WriteLine("Friend MustInherit Partial Class BoundTreeWalker"); 1215WriteLine("Inherits BoundTreeVisitor"); 1220WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1223WriteLine("Me.Visit{1}(node.{0})", field.Name, IsNodeList(field.Type) ? "List" : ""); 1224WriteLine("Return Nothing"); 1226WriteLine("End Function"); 1231WriteLine("End Class"); 1246WriteLine("internal sealed class BoundTreeDumperNodeProducer : BoundTreeVisitor<object?, TreeDumperNode>"); 1248WriteLine("private BoundTreeDumperNodeProducer()"); 1251WriteLine("public static TreeDumperNode MakeTree(BoundNode node) => (new BoundTreeDumperNodeProducer()).Visit(node, null);"); 1258WriteLine("new TreeDumperNode[]"); 1280WriteLine(","); 1285WriteLine(","); 1291WriteLine(","); 1295WriteLine(""); 1300WriteLine("Array.Empty<TreeDumperNode>()"); 1302WriteLine(");"); 1309WriteLine("Friend NotInheritable Class BoundTreeDumperNodeProducer"); 1311WriteLine("Inherits BoundTreeVisitor(Of Object, TreeDumperNode)"); 1313WriteLine("Private Sub New()"); 1314WriteLine("End Sub"); 1316WriteLine("Public Shared Function MakeTree(node As BoundNode) As TreeDumperNode"); 1318WriteLine("Return (New BoundTreeDumperNodeProducer()).Visit(node, Nothing)"); 1320WriteLine("End Function"); 1325WriteLine("Public Overrides Function Visit{0}(node As {1}, arg As Object) As TreeDumperNode", StripBound(node.Name), node.Name); 1331WriteLine("New TreeDumperNode() {{"); 1344WriteLine(""); 1346WriteLine(","); 1349WriteLine("}})"); 1353WriteLine("Array.Empty(Of TreeDumperNode)())"); 1356WriteLine("End Function"); 1360WriteLine("End Class"); 1375WriteLine("internal abstract partial class BoundTreeRewriter : BoundTreeVisitor"); 1381WriteLine($"{GetVisitFunctionDeclaration(node.Name, isOverride: true)} => node;"); 1384WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1394WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.Visit{field.Type.TrimEnd('?')}(node.{field.Name});"); 1398WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitLocals(node.{field.Name});"); 1402WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitDeclaredLocalFunctions(node.{field.Name});"); 1406WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitSymbols<{elementType}>(node.{field.Name});"); 1419WriteLine("TypeSymbol? {0} = this.VisitType(node.{1});", ToCamelCase(field.Name), field.Name); 1432WriteLine(";"); 1436WriteLine("return node;"); 1448WriteLine("Friend MustInherit Partial Class BoundTreeRewriter"); 1450WriteLine("Inherits BoundTreeVisitor"); 1454WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1467WriteLine("Dim {0} as TypeSymbol = Me.VisitType(node.{1})", ToCamelCase(field.Name), field.Name); 1474WriteLine(""); 1478WriteLine("Return node"); 1482WriteLine("End Function"); 1486WriteLine("End Class"); 1505WriteLine("internal sealed partial class NullabilityRewriter : BoundTreeRewriter"); 1511WriteLine($"private readonly ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> {updatedNullabilities};"); 1512WriteLine($"private readonly NullableWalker.SnapshotManager? {snapshotManager};"); 1513WriteLine($"private readonly ImmutableDictionary<Symbol, Symbol>.Builder {remappedSymbols};"); 1516WriteLine("public NullabilityRewriter(ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> updatedNullabilities, NullableWalker.SnapshotManager? snapshotManager, ImmutableDictionary<Symbol, Symbol>.Builder remappedSymbols)"); 1518WriteLine($"{updatedNullabilities} = updatedNullabilities;"); 1519WriteLine($"{snapshotManager} = snapshotManager;"); 1520WriteLine($"{remappedSymbols} = remappedSymbols;"); 1537WriteLine(GetVisitFunctionDeclaration(node.Name, isOverride: true)); 1545WriteLine($"{field.Type} {ToCamelCase(field.Name)} = GetUpdatedSymbol(node, node.{field.Name});"); 1550WriteLine($"{field.Type} {ToCamelCase(field.Name)} = GetUpdatedArray(node, node.{field.Name});"); 1565WriteLine($"{node.Name} updatedNode;"); 1572WriteLine("else"); 1576WriteLine("return updatedNode;"); 1582WriteLine("return node;"); 1587WriteLine("return updatedNode;"); 1594WriteLine(";"); 1600=> WriteLine($"if ({(inverted ? "!" : "")}{updatedNullabilities}.TryGetValue(node, out (NullabilityInfo Info, TypeSymbol? Type) infoAndType))"); 1606WriteLine(";"); 1643WriteLine($"updatedNode.TopLevelNullability = infoAndType.Info;"); 1913WriteLine($"{field.Type} {ToCamelCase(field.Name)} = node.{field.Name};"); 1917WriteLine($"{field.Type} {ToCamelCase(field.Name)} = this.VisitList(node.{field.Name});"); 1921WriteLine($"{field.Type} {ToCamelCase(field.Name)} = ({field.Type})this.Visit(node.{field.Name});"); 1929WriteLine("Dim {0} As {2} = node.{1}", ToCamelCase(field.Name), field.Name, field.Type); 1933WriteLine("Dim {0} As {2} = Me.VisitList(node.{1})", ToCamelCase(field.Name), field.Name, field.Type); 1937WriteLine("Dim {0} As {2} = DirectCast(Me.Visit(node.{1}), {2})", ToCamelCase(field.Name), field.Name, field.Type);