示例#1
0
        public override void Decompile(ModuleDef mod, ITextOutput output, DecompilationContext ctx)
        {
            WriteModule(mod, output, ctx);

            using (ctx.DisableAssemblyLoad()) {
                AstBuilder codeDomBuilder = CreateAstBuilder(ctx, langSettings.Settings, currentModule: mod);
                codeDomBuilder.AddAssembly(mod, true, false, true);
                RunTransformsAndGenerateCode(codeDomBuilder, output, ctx);
            }
        }
示例#2
0
        public override void Decompile(ModuleDef mod, IDecompilerOutput output, DecompilationContext ctx)
        {
            WriteModule(mod, output, ctx);

            using (ctx.DisableAssemblyLoad()) {
                var state = CreateAstBuilder(ctx, langSettings.Settings, currentModule: mod);
                try {
                    state.AstBuilder.AddAssembly(mod, true, false, true);
                    RunTransformsAndGenerateCode(ref state, output, ctx);
                }
                finally {
                    state.Dispose();
                }
            }
        }
示例#3
0
        public override void Decompile(AssemblyDef asm, IDecompilerOutput output, DecompilationContext ctx)
        {
            WriteAssembly(asm, output, ctx);

            using (ctx.DisableAssemblyLoad()) {
                var state = CreateAstBuilder(ctx, GetDecompilerSettings(), currentModule: asm.ManifestModule);
                try {
                    state.AstBuilder.AddAssembly(asm.ManifestModule, true, true, false);
                    RunTransformsAndGenerateCode(ref state, output, ctx);
                }
                finally {
                    state.Dispose();
                }
            }
        }
示例#4
0
		public override void Decompile(ModuleDef mod, IDecompilerOutput output, DecompilationContext ctx) {
			WriteModule(mod, output, ctx);

			using (ctx.DisableAssemblyLoad()) {
				var state = CreateAstBuilder(ctx, langSettings.Settings, currentModule: mod);
				try {
					state.AstBuilder.AddAssembly(mod, true, false, true);
					RunTransformsAndGenerateCode(ref state, output, ctx);
				}
				finally {
					state.Dispose();
				}
			}
		}