OK, I am in the middle of fixing an issue with Fody, but I have published this to a fork in the meantime:
https://github.com/Michael-DST/Fody/blob/master/Integration/Weavers/RoslynCecilWeaver.cs There you can see Roslyn + Cecil + Fody integration. Like I mentioned, there is an issue currently when building this solution, so the code has to be considered "look but don't touch" for now. :) Here is the issue if you'd like to follow along: https://github.com/Fody/Fody/issues/144 Thank you, Michael On Sat, Nov 29, 2014 at 5:16 AM, Jb Evain <[email protected]> wrote: > Hey Michael, > > That sounds like something you should write about for others to see. > > Jb > > On Fri, Nov 28, 2014 at 11:34 PM, Michael DeMond > <[email protected]> wrote: > > Oh man... I ended up just hacking away at the ILRepack code and just > pulling > > over the Import functionality to get what I needed. It works like a > champ, > > now! I would use the ILRepack NuGet, but it doesn't support assemblies > that > > are in memory. > > > > I now have that capacity to compile a full syntax tree with Roslyn, read > it > > as a binary format with Cecil, and then import the generated types in a > Fody > > Weaver on build via the pulled in code from ILRepack... all without > touching > > a line of IL. I'm such a cheating hack, I know. :D But it's super nice > now > > as I will be able to define AOT decorators for my Xamarin.Forms > applications > > (100% cross-platform compatible)... in C#, no less. SWEEEEEEET. > > > > The one thing I will have to look into is the performance/time with the > > Roslyn compile... it's pretty chunky at ~800ms. > > > > Once I have pushed/synced my code I will share here just in case anyone > is > > interested in the future. > > > > Thanks again for all the amazing work in creating Cecil!!! > > > > On Fri, Nov 28, 2014 at 1:54 PM, Michael DeMond <[email protected] > > > > wrote: > >> > >> Hello, > >> > >> Has there been any improvements/suggestions around this since this last > >> thread post, by chance? I am dynamically creating an assembly via > Roslyn, > >> then reading it into Cecil with a MemoryStream via > >> AssemblyDefinition.ReadAssembly. When I Remove the Type from its > original > >> (Roslyn) module definition, and then Add it to the created Cecil module > >> definition, it does work, but I do end up getting a "Specified method > is not > >> supported." exception when the module writes out. > >> > >> Thanks for any insight you can provide. I have a sinking feeling that I > >> think I'm just going to have to learn IL after all. :P > >> Michael > >> > >> On Tuesday, November 15, 2011 12:09:55 PM UTC-5, [email protected] > >> wrote: > >>> > >>> Hi, > >>> > >>> I've been reading > >>> https://github.com/mono/cecil/tree/master/merge/Mono.Merge > >>> and I'm close to understanding it but I feel im missing something > >>> rather simple... > >>> > >>> How can I copy a type from one assembly to another, currently I'm > >>> doing this: > >>> > >>> var t = assemblyDefA.MainModule.GetType("some name"); > >>> assemblyDefB.MainModule.Types.Add(t); > >>> > >>> but I get "Type already attached". > >>> > >>> How can I achieve this? > >>> > >>> Thanks! > >> > >> -- > >> -- > >> -- > >> mono-cecil > >> --- > >> You received this message because you are subscribed to a topic in the > >> Google Groups "mono-cecil" group. > >> To unsubscribe from this topic, visit > >> https://groups.google.com/d/topic/mono-cecil/Yt9xQedjw54/unsubscribe. > >> To unsubscribe from this group and all its topics, send an email to > >> [email protected]. > >> For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > -- > > -- > > mono-cecil > > --- > > You received this message because you are subscribed to the Google Groups > > "mono-cecil" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to [email protected]. > > For more options, visit https://groups.google.com/d/optout. > > -- > -- > -- > mono-cecil > --- > You received this message because you are subscribed to a topic in the > Google Groups "mono-cecil" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/mono-cecil/Yt9xQedjw54/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- -- -- mono-cecil --- You received this message because you are subscribed to the Google Groups "mono-cecil" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
