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)

I googled around and we're no lucky, I'm quite lost, can anyone give
me a hint?


--~--~---------~--~----~------------~-------~--~----~
--
mono-cecil
-~----------~----~----~----~------~----~------~--~---

Reply via email to