@@ -115,31 +115,22 @@ public IEnumerable<string> Method(IVisitorContext context, string declaringTypeN
115115 public IEnumerable < string > Constructor ( IVisitorContext context , MemberDefinitionContext memberDefinitionContext , string typeName , bool isStatic , string methodAccessibility , string [ ] paramTypes , string ? methodDefinitionPropertyValues = null )
116116 {
117117 var parameterlessCtorSignatureVar = context . Naming . SyntheticVariable ( "parameterlessCtorSignature" , ElementKind . LocalVariable ) ;
118- var ctorBlobIndexVar = context . Naming . SyntheticVariable ( "parameterlessCtorBlobIndex" , ElementKind . LocalVariable ) ;
119-
120118 yield return Format (
121119 $$ """
122120 var {{ parameterlessCtorSignatureVar }} = new BlobBuilder();
123121 new BlobEncoder({{ parameterlessCtorSignatureVar }} )
124122 .MethodSignature(isInstanceMethod: {{ ( ! isStatic ) . ToKeyword ( ) }} )
125123 .Parameters(0, returnType => returnType.Void(), parameters => { });
126-
127- var {{ ctorBlobIndexVar }} = metadata.GetOrAddBlob({{ parameterlessCtorSignatureVar }} );
128-
129- var objectCtorMemberRef = metadata.AddMemberReference(
130- {{ memberDefinitionContext . ParentDefinitionVariableName }} ,
131- metadata.GetOrAddString(".ctor"),
132- {{ ctorBlobIndexVar }} );
133124 """ ) ;
134125
135- ( ( SystemReflectionMetadataContext ) context ) . DelayedDefinitionsManager . RegisterMethodDefinition ( memberDefinitionContext . ParentDefinitionVariableName , ( ctx , methodRecord ) =>
126+ ( ( SystemReflectionMetadataContext ) context ) . DelayedDefinitionsManager . RegisterMethodDefinition ( memberDefinitionContext . ParentDefinitionVariableName , ( ctx , methodRecord ) =>
136127 {
137128 var ctorDefVar = ctx . Naming . SyntheticVariable ( "ctor" , ElementKind . LocalVariable ) ;
138129 ctx . Generate ( $ """
139130 var { ctorDefVar } = metadata.AddMethodDefinition(
140- MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.SpecialName | MethodAttributes.RTSpecialName,
131+ { ( isStatic ? " MethodAttributes.Private | MethodAttributes.Static" : "MethodAttributes. Public" ) } | MethodAttributes.HideBySig | MethodAttributes.SpecialName | MethodAttributes.RTSpecialName,
141132 MethodImplAttributes.IL | MethodImplAttributes.Managed,
142- metadata.GetOrAddString(". ctor"),
133+ metadata.GetOrAddString("{ ( isStatic ? ".cctor" : ". ctor" ) } "),
143134 metadata.GetOrAddBlob({ parameterlessCtorSignatureVar } ),
144135 methodBodyStream.AddMethodBody({ memberDefinitionContext . IlContext . VariableName } ),
145136 parameterList: { methodRecord . FirstParameterHandle } );
@@ -163,7 +154,7 @@ public IEnumerable<string> Field(IVisitorContext context, in MemberDefinitionCon
163154 BlobBuilder { fieldSignatureVar } = new();
164155 new BlobEncoder({ fieldSignatureVar } )
165156 .FieldSignature()
166- { typedTypeResolver . ResolveForEncoder ( fieldType , TargetEncoderKind . Field , false ) } ;
157+ . { typedTypeResolver . ResolveForEncoder ( fieldType , TargetEncoderKind . Field , false ) } ;
167158
168159 var { memberDefinitionContext . MemberDefinitionVariableName } = metadata.AddFieldDefinition({ fieldAttributes } , metadata.GetOrAddString("{ fieldOrEvent . Name } "), metadata.GetOrAddBlob({ fieldSignatureVar } ));
169160 """
0 commit comments