Example #1
0
 private void PopulateParameters()
 {
     if (parameters == null)
     {
         MethodSignature methodSignature = this.MethodSignature;
         parameters = new ParameterInfo[methodSignature.GetParameterCount()];
         int parameter = module.MethodDef.records[index].ParamList - 1;
         int end       = module.MethodDef.records.Length > index + 1 ? module.MethodDef.records[index + 1].ParamList - 1 : module.Param.records.Length;
         for (; parameter < end; parameter++)
         {
             int seq = module.Param.records[parameter].Sequence - 1;
             if (seq == -1)
             {
                 returnParameter = new ParameterInfoImpl(this, seq, parameter);
             }
             else
             {
                 parameters[seq] = new ParameterInfoImpl(this, seq, parameter);
             }
         }
         for (int i = 0; i < parameters.Length; i++)
         {
             if (parameters[i] == null)
             {
                 parameters[i] = new ParameterInfoImpl(this, i, -1);
             }
         }
         if (returnParameter == null)
         {
             returnParameter = new ParameterInfoImpl(this, -1, -1);
         }
     }
 }
Example #2
0
		private void PopulateParameters()
		{
			if (parameters == null)
			{
				MethodSignature methodSignature = this.MethodSignature;
				parameters = new ParameterInfo[methodSignature.GetParameterCount()];
				int parameter = module.MethodDef.records[index].ParamList - 1;
				int end = module.MethodDef.records.Length > index + 1 ? module.MethodDef.records[index + 1].ParamList - 1 : module.Param.records.Length;
				for (; parameter < end; parameter++)
				{
					int seq = module.Param.records[parameter].Sequence - 1;
					if (seq == -1)
					{
						returnParameter = new ParameterInfoImpl(this, seq, parameter);
					}
					else
					{
						parameters[seq] = new ParameterInfoImpl(this, seq, parameter);
					}
				}
				for (int i = 0; i < parameters.Length; i++)
				{
					if (parameters[i] == null)
					{
						parameters[i] = new ParameterInfoImpl(this, i, -1);
					}
				}
				if (returnParameter == null)
				{
					returnParameter = new ParameterInfoImpl(this, -1, -1);
				}
			}
		}