public void EmitVersion(Version version)
{
var types = new List<System.Type>() { typeof(int), typeof(int) };
IL.Emit(OpCodes.Ldc_I4, version.Major);
IL.Emit(OpCodes.Ldc_I4, version.Minor);
if (version.Build >= 0)
{
IL.Emit(OpCodes.Ldc_I4, version.Build);
types.Add(typeof(int));
}
if (version.Revision >= 0)
{
IL.Emit(OpCodes.Ldc_I4, version.Revision);
types.Add(typeof(int));
}
IL.Emit(OpCodes.Newobj, typeof(Version).GetConstructor(types.ToArray()));
}