Hey, On 1/14/09, Augusto Radtke <[email protected]> wrote: > > Hello! I'm trying to generate a generic type calling it's constructor > but I can't get it right: > > var ntor = assembly.Modules[0].Import(typeof(int?).GetConstructors > ()[0]); > var gene = new GenericInstanceMethod(ntor); > > gene.GenericArguments.Add(assembly.Modules[0].Import(typeof > (int))); > > il.Append(il.Create(OpCodes.Ldc_I4, 555))); > il.Append(il.Create(OpCodes.Newobj, assembly.Modules[0].Import > (gene))); > > That generates something like this in IL: > > newobj instance void [mscorlib]System.Nullable`1<int32>::.ctor<int32> > (int32) > > I also tried to remove the generic argument, and it generated > something like this: > > newobj instance void [mscorlib]System.Nullable`1<int32>::.ctor(int32) > > And what I'm looking for to generate is: > > newobj instance void [mscorlib]System.Nullable`1<int32>::.ctor(!0) >
Then just pass `ntor` to newobj :) -- Jb Evain <[email protected]> --~--~---------~--~----~------------~-------~--~----~ -- mono-cecil -~----------~----~----~----~------~----~------~--~---
