@@ -83,36 +83,33 @@ private void EmitContextClass(ModelReaderWriterContextGenerationSpec contextGene
8383 builder . AppendLine ( ) ;
8484 }
8585
86- if ( contextGenerationSpec . TypeBuilders . Count > 0 )
87- {
88- builder . AppendLine ( indent , $ "private static { contextName } _{ contextName . ToCamelCase ( ) } ;") ;
89- builder . AppendLine ( indent , "/// <summary> Gets the default instance </summary>" ) ;
90- builder . AppendLine ( indent , $ "public static { contextName } Default => _{ contextName . ToCamelCase ( ) } ??= new();") ;
91- builder . AppendLine ( ) ;
86+ builder . AppendLine ( indent , $ "private static { contextName } _{ contextName . ToCamelCase ( ) } ;") ;
87+ builder . AppendLine ( indent , "/// <summary> Gets the default instance </summary>" ) ;
88+ builder . AppendLine ( indent , $ "public static { contextName } Default => _{ contextName . ToCamelCase ( ) } ??= new();") ;
89+ builder . AppendLine ( ) ;
9290
93- builder . AppendLine ( indent , $ "private { contextName } ()") ;
94- builder . AppendLine ( indent , "{" ) ;
95- indent ++ ;
96- foreach ( var modelInfo in contextGenerationSpec . TypeBuilders )
91+ builder . AppendLine ( indent , $ "private { contextName } ()") ;
92+ builder . AppendLine ( indent , "{" ) ;
93+ indent ++ ;
94+ foreach ( var modelInfo in contextGenerationSpec . TypeBuilders )
95+ {
96+ builder . Append ( indent , $ "_typeBuilderFactories.Add(typeof({ modelInfo . Type . FullyQualifiedName } ), () => ") ;
97+ if ( ShouldGenerateAsLocal ( contextGenerationSpec , modelInfo ) )
9798 {
98- builder . Append ( indent , $ "_typeBuilderFactories.Add(typeof({ modelInfo . Type . FullyQualifiedName } ), () => ") ;
99- if ( ShouldGenerateAsLocal ( contextGenerationSpec , modelInfo ) )
100- {
101- builder . AppendLine ( $ " new global::{ modelInfo . Type . GetInnerItemType ( ) . Namespace } .{ modelInfo . Type . TypeCaseName } Builder());") ;
102- }
103- else
104- {
105- builder . AppendLine ( $ " s_referenceContexts[typeof({ modelInfo . ContextType . FullyQualifiedName } )].GetTypeBuilder(typeof({ modelInfo . Type . FullyQualifiedName } )));") ;
106- }
99+ builder . AppendLine ( $ " new global::{ modelInfo . Type . GetInnerItemType ( ) . Namespace } .{ modelInfo . Type . TypeCaseName } Builder());") ;
107100 }
108- builder . AppendLine ( ) ;
101+ else
102+ {
103+ builder . AppendLine ( $ " s_referenceContexts[typeof({ modelInfo . ContextType . FullyQualifiedName } )].GetTypeBuilder(typeof({ modelInfo . Type . FullyQualifiedName } )));") ;
104+ }
105+ }
106+ builder . AppendLine ( ) ;
109107
110- builder . AppendLine ( indent , "AddAdditionalFactories(_typeBuilderFactories);" ) ;
108+ builder . AppendLine ( indent , "AddAdditionalFactories(_typeBuilderFactories);" ) ;
111109
112- indent -- ;
113- builder . AppendLine ( indent , "}" ) ;
114- builder . AppendLine ( ) ;
115- }
110+ indent -- ;
111+ builder . AppendLine ( indent , "}" ) ;
112+ builder . AppendLine ( ) ;
116113
117114 builder . AppendLine ( indent , "/// <inheritdoc/>" ) ;
118115 builder . Append ( indent , "protected override bool TryGetTypeBuilderCore(" ) ;
0 commit comments