public void LoadParameter(int paramPos)
{
switch (paramPos)
{
case 0: Emit(OpCodes.Ldarg_0); break;
case 1: Emit(OpCodes.Ldarg_1); break;
case 2: Emit(OpCodes.Ldarg_2); break;
case 3: Emit(OpCodes.Ldarg_3); break;
default:
if (paramPos <= 255)
{
Emit(OpCodes.Ldarg_S, (byte)paramPos);
}
else if (paramPos <= ushort.MaxValue)
{
Emit(OpCodes.Ldarg, paramPos);
}
else
{
throw new XslTransformException(SR.XmlIl_TooManyParameters);
}
break;
}
}