@@ -45,7 +45,7 @@ protected Method(GenericContext gc) : base(gc.cx)
4545 public abstract string Name { get ; }
4646
4747 public virtual IList < LocalVariable > ? LocalVariables => throw new NotImplementedException ( ) ;
48- public IList < Parameter > ? Parameters { get ; private set ; }
48+ public IList < Parameter > ? Parameters { get ; protected set ; }
4949
5050 public override void WriteId ( TextWriter trapFile ) => WriteMethodId ( trapFile , DeclaringType , NameLabel ) ;
5151
@@ -76,11 +76,6 @@ internal protected void WriteMethodId(TextWriter trapFile, Type parent, string m
7676
7777 public override string IdSuffix => ";cil-method" ;
7878
79- protected void PopulateParameters ( IEnumerable < Type > parameterTypes )
80- {
81- Parameters = MakeParameters ( parameterTypes ) . ToArray ( ) ;
82- }
83-
8479 protected IEnumerable < IExtractionProduct > PopulateFlags
8580 {
8681 get
@@ -92,7 +87,7 @@ protected IEnumerable<IExtractionProduct> PopulateFlags
9287
9388 public abstract bool IsStatic { get ; }
9489
95- private IEnumerable < Parameter > MakeParameters ( IEnumerable < Type > parameterTypes )
90+ protected IEnumerable < Parameter > MakeParameters ( IEnumerable < Type > parameterTypes )
9691 {
9792 int i = 0 ;
9893
@@ -206,9 +201,9 @@ public override IEnumerable<IExtractionProduct> Contents
206201
207202 var typeSignature = md . DecodeSignature ( cx . TypeSignatureDecoder , this ) ;
208203
209- PopulateParameters ( typeSignature . ParameterTypes ) ;
204+ Parameters = MakeParameters ( typeSignature . ParameterTypes ) . ToArray ( ) ;
210205
211- foreach ( var c in Parameters ! )
206+ foreach ( var c in Parameters )
212207 yield return c ;
213208
214209 foreach ( var c in PopulateFlags )
@@ -466,8 +461,8 @@ public override IEnumerable<IExtractionProduct> Contents
466461
467462 var typeSignature = mr . DecodeMethodSignature ( cx . TypeSignatureDecoder , this ) ;
468463
469- PopulateParameters ( typeSignature . ParameterTypes ) ;
470- foreach ( var p in Parameters ! ) yield return p ;
464+ Parameters = MakeParameters ( typeSignature . ParameterTypes ) . ToArray ( ) ;
465+ foreach ( var p in Parameters ) yield return p ;
471466
472467 foreach ( var f in PopulateFlags ) yield return f ;
473468
@@ -550,8 +545,8 @@ public override IEnumerable<IExtractionProduct> Contents
550545 throw new InternalError ( $ "Unexpected constructed method handle kind { ms . Method . Kind } ") ;
551546 }
552547
553- PopulateParameters ( constructedTypeSignature . ParameterTypes ) ;
554- foreach ( var p in Parameters ! )
548+ Parameters = MakeParameters ( constructedTypeSignature . ParameterTypes ) . ToArray ( ) ;
549+ foreach ( var p in Parameters )
555550 yield return p ;
556551
557552 foreach ( var f in PopulateFlags )
0 commit comments