internal sealed override RuntimeParameterInfo[] GetRuntimeParameters(RuntimeMethodInfo contextMethod, out RuntimeParameterInfo returnParameter)
 {
     RuntimeTypeInfo[]      runtimeParameterTypes = _runtimeParameterTypes;
     RuntimeParameterInfo[] parameters            = new RuntimeParameterInfo[runtimeParameterTypes.Length];
     for (int i = 0; i < parameters.Length; i++)
     {
         parameters[i] = RuntimeSyntheticParameterInfo.GetRuntimeSyntheticParameterInfo(this, i, runtimeParameterTypes[i]);
     }
     returnParameter = RuntimeSyntheticParameterInfo.GetRuntimeSyntheticParameterInfo(this, -1, _returnType);
     return(parameters);
 }
Beispiel #2
0
 internal sealed override RuntimeParameterInfo[] GetRuntimeParametersAndReturn(RuntimeMethodInfo contextMethod)
 {
     RuntimeParameterInfo[] runtimeParametersAndReturn = _lazyRuntimeParametersAndReturn;
     if (runtimeParametersAndReturn == null)
     {
         runtimeParametersAndReturn = new RuntimeParameterInfo[_runtimeParameterTypesAndReturn.Length];
         for (int i = 0; i < runtimeParametersAndReturn.Length; i++)
         {
             runtimeParametersAndReturn[i] = RuntimeSyntheticParameterInfo.GetRuntimeSyntheticParameterInfo(this, i - 1, _runtimeParameterTypesAndReturn[i]);
         }
         _lazyRuntimeParametersAndReturn = runtimeParametersAndReturn;
     }
     return(runtimeParametersAndReturn);
 }