BuilderState CreateAstBuilder(DecompilationContext ctx, DecompilerSettings settings, ModuleDef currentModule = null, TypeDef currentType = null, bool isSingleMember = false) { if (currentModule == null) { currentModule = currentType.Module; } if (isSingleMember) { settings = settings.Clone(); settings.UsingDeclarations = false; } var cache = ctx.GetOrCreate <BuilderCache>(); var state = new BuilderState(ctx, cache); state.AstBuilder.Context.CurrentModule = currentModule; state.AstBuilder.Context.CancellationToken = ctx.CancellationToken; state.AstBuilder.Context.CurrentType = currentType; state.AstBuilder.Context.Settings = settings; return(state); }
BuilderState CreateAstBuilder(DecompilationContext ctx, DecompilerSettings settings, ModuleDef currentModule = null, TypeDef currentType = null, bool isSingleMember = false) { if (currentModule == null) { currentModule = currentType.Module; } settings = settings.Clone(); if (isSingleMember) { settings.UsingDeclarations = false; } settings.IntroduceIncrementAndDecrement = false; settings.MakeAssignmentExpressions = false; settings.QueryExpressions = false; settings.AlwaysGenerateExceptionVariableForCatchBlocksUnlessTypeIsObject = true; var cache = ctx.GetOrCreate <BuilderCache>(); var state = new BuilderState(ctx, cache); state.AstBuilder.Context.CurrentModule = currentModule; state.AstBuilder.Context.CancellationToken = ctx.CancellationToken; state.AstBuilder.Context.CurrentType = currentType; state.AstBuilder.Context.Settings = settings; return(state); }
BuilderState CreateAstBuilder(DecompilationContext ctx, DecompilerSettings settings, ModuleDef currentModule = null, TypeDef currentType = null, bool isSingleMember = false) { if (currentModule == null) currentModule = currentType.Module; if (isSingleMember) { settings = settings.Clone(); settings.UsingDeclarations = false; } var cache = ctx.GetOrCreate<BuilderCache>(); var state = new BuilderState(ctx, cache, MetadataTextColorProvider); state.AstBuilder.Context.CurrentModule = currentModule; state.AstBuilder.Context.CancellationToken = ctx.CancellationToken; state.AstBuilder.Context.CurrentType = currentType; state.AstBuilder.Context.Settings = settings; return state; }
BuilderState CreateAstBuilder(DecompilationContext ctx, DecompilerSettings settings, ModuleDef currentModule = null, TypeDef currentType = null, bool isSingleMember = false) { if (currentModule == null) currentModule = currentType.Module; settings = settings.Clone(); if (isSingleMember) settings.UsingDeclarations = false; settings.IntroduceIncrementAndDecrement = false; settings.MakeAssignmentExpressions = false; settings.QueryExpressions = false; settings.AlwaysGenerateExceptionVariableForCatchBlocksUnlessTypeIsObject = true; var cache = ctx.GetOrCreate<BuilderCache>(); var state = new BuilderState(ctx, cache, MetadataTextColorProvider); state.AstBuilder.Context.CurrentModule = currentModule; state.AstBuilder.Context.CancellationToken = ctx.CancellationToken; state.AstBuilder.Context.CurrentType = currentType; state.AstBuilder.Context.Settings = settings; return state; }