protected override void WriteToolTip(ITextColorWriter output, ILanguage language) { output.WriteModule(DnSpyFile.ModuleDef.Name); output.WriteLine(); output.Write(BoxedTextColor.EnumField, TargetFrameworkInfo.Create(DnSpyFile.ModuleDef).ToString()); output.WriteLine(); output.Write(BoxedTextColor.EnumField, TargetFrameworkUtils.GetArchString(DnSpyFile.ModuleDef)); output.WriteLine(); output.WriteFilename(DnSpyFile.Filename); }
protected override void WriteToolTip(ITextColorWriter output, IDecompiler decompiler) { output.WriteModule(Document.ModuleDef.Name); output.WriteLine(); output.Write(BoxedTextColor.EnumField, TargetFrameworkInfo.Create(Document.ModuleDef).ToString()); output.WriteLine(); output.Write(BoxedTextColor.EnumField, TargetFrameworkUtils.GetArchString(Document.ModuleDef)); output.WriteLine(); output.WriteFilename(Document.Filename); }
protected override void WriteCore(ITextColorWriter output, IDecompiler decompiler, DocumentNodeWriteOptions options) { if ((options & DocumentNodeWriteOptions.ToolTip) == 0) new NodePrinter().Write(output, decompiler, Document.ModuleDef, false); else { output.WriteModule(Document.ModuleDef.Name); output.WriteLine(); output.Write(BoxedTextColor.Text, TargetFrameworkInfo.Create(Document.ModuleDef).ToString()); output.WriteLine(); output.Write(BoxedTextColor.Text, TargetFrameworkUtils.GetArchString(Document.ModuleDef)); output.WriteLine(); output.WriteFilename(Document.Filename); } }
protected override void WriteCore(ITextColorWriter output, IDecompiler decompiler, DocumentNodeWriteOptions options) { if ((options & DocumentNodeWriteOptions.ToolTip) == 0) { new NodePrinter().Write(output, decompiler, Document.ModuleDef, false); } else { output.WriteModule(Document.ModuleDef.Name); output.WriteLine(); output.Write(BoxedTextColor.Text, TargetFrameworkInfo.Create(Document.ModuleDef).ToString()); output.WriteLine(); output.Write(BoxedTextColor.Text, TargetFrameworkUtils.GetArchString(Document.ModuleDef)); output.WriteLine(); output.WriteFilename(Document.Filename); } }
public void WriteModule(BreakpointVM vm) { var ilbp = vm.Breakpoint as ILCodeBreakpoint; if (ilbp != null) { // Always use the filename since it matches the module names in the call stack and // modules windows output.WriteModule(ModulePathToModuleName(ilbp.MethodToken.Module.ModuleName)); return; } var debp = vm.Breakpoint as DebugEventBreakpoint; if (debp != null) { // nothing return; } }
/// <summary> /// Writes a module /// </summary> /// <param name="output">Output</param> /// <param name="decompiler">Decompiler</param> /// <param name="module">Module</param> /// <param name="showToken">true to write tokens</param> public void Write(ITextColorWriter output, IDecompiler decompiler, ModuleDef module, bool showToken) { output.WriteModule(module.Name); WriteToken(output, module, showToken); }
void CreateUI(ITextColorWriter output, object?o, bool includeNamespace) { if (o is NamespaceSearchResult ns) { output.WriteNamespace(ns.Namespace); return; } if (o is TypeDef td) { Debug2.Assert(!(Context.Decompiler is null)); Context.Decompiler.WriteType(output, td, includeNamespace); return; } if (o is MethodDef md) { var methodNameColor = Context.Decompiler.MetadataTextColorProvider.GetColor(md); output.Write(methodNameColor, IdentifierEscaper.Escape(md.Name)); if (md.ImplMap is ImplMap implMap && !UTF8String.IsNullOrEmpty(implMap.Name) && implMap.Name != md.Name) { output.WriteSpace(); output.Write(BoxedTextColor.Punctuation, "("); output.Write(methodNameColor, IdentifierEscaper.Escape(implMap.Name)); output.Write(BoxedTextColor.Punctuation, ")"); } return; } if (o is FieldDef fd) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(fd), IdentifierEscaper.Escape(fd.Name)); return; } if (o is PropertyDef pd) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(pd), IdentifierEscaper.Escape(pd.Name)); return; } if (o is EventDef ed) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(ed), IdentifierEscaper.Escape(ed.Name)); return; } if (o is AssemblyDef asm) { output.Write(asm); return; } if (o is ModuleDef mod) { output.WriteModule(mod.FullName); return; } if (o is AssemblyRef asmRef) { output.Write(asmRef); return; } if (o is ModuleRef modRef) { output.WriteModule(modRef.FullName); return; } if (o is ParamDef paramDef) { output.Write(BoxedTextColor.Parameter, IdentifierEscaper.Escape(paramDef.Name)); return; } // non-.NET file if (o is IDsDocument document) { output.Write(BoxedTextColor.Text, document.GetShortName()); return; } if (o is ResourceNode resNode) { output.WriteFilename(resNode.Name); return; } if (o is ResourceElementNode resElNode) { output.WriteFilename(resElNode.Name); return; } if (o is ErrorMessage em) { output.Write(em.Color, em.Text); return; } Debug2.Assert(o is null); }
void CreateUI(ITextColorWriter output, object o, bool includeNamespace) { var ns = o as NamespaceSearchResult; if (ns != null) { output.WriteNamespace(ns.Namespace); return; } var td = o as TypeDef; if (td != null) { Debug.Assert(Context.Decompiler != null); Context.Decompiler.WriteType(output, td, includeNamespace); return; } var md = o as MethodDef; if (md != null) { output.Write(TextColorHelper.GetColor(md), IdentifierEscaper.Escape(md.Name)); return; } var fd = o as FieldDef; if (fd != null) { output.Write(TextColorHelper.GetColor(fd), IdentifierEscaper.Escape(fd.Name)); return; } var pd = o as PropertyDef; if (pd != null) { output.Write(TextColorHelper.GetColor(pd), IdentifierEscaper.Escape(pd.Name)); return; } var ed = o as EventDef; if (ed != null) { output.Write(TextColorHelper.GetColor(ed), IdentifierEscaper.Escape(ed.Name)); return; } var asm = o as AssemblyDef; if (asm != null) { output.Write(asm); return; } var mod = o as ModuleDef; if (mod != null) { output.WriteModule(mod.FullName); return; } var asmRef = o as AssemblyRef; if (asmRef != null) { output.Write(asmRef); return; } var modRef = o as ModuleRef; if (modRef != null) { output.WriteModule(modRef.FullName); return; } var paramDef = o as ParamDef; if (paramDef != null) { output.Write(BoxedTextColor.Parameter, IdentifierEscaper.Escape(paramDef.Name)); return; } // non-.NET file var document = o as IDsDocument; if (document != null) { output.Write(BoxedTextColor.Text, document.GetShortName()); return; } var resNode = o as IResourceNode; if (resNode != null) { output.WriteFilename(resNode.Name); return; } var resElNode = o as IResourceElementNode; if (resElNode != null) { output.WriteFilename(resElNode.Name); return; } var em = o as ErrorMessage; if (em != null) { output.Write(em.Color, em.Text); return; } Debug.Assert(o == null); }
void CreateUI(ITextColorWriter output, object o, bool includeNamespace) { if (o is NamespaceSearchResult ns) { output.WriteNamespace(ns.Namespace); return; } if (o is TypeDef td) { Debug.Assert(Context.Decompiler != null); Context.Decompiler.WriteType(output, td, includeNamespace); return; } if (o is MethodDef md) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(md), IdentifierEscaper.Escape(md.Name)); return; } if (o is FieldDef fd) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(fd), IdentifierEscaper.Escape(fd.Name)); return; } if (o is PropertyDef pd) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(pd), IdentifierEscaper.Escape(pd.Name)); return; } if (o is EventDef ed) { output.Write(Context.Decompiler.MetadataTextColorProvider.GetColor(ed), IdentifierEscaper.Escape(ed.Name)); return; } if (o is AssemblyDef asm) { output.Write(asm); return; } if (o is ModuleDef mod) { output.WriteModule(mod.FullName); return; } if (o is AssemblyRef asmRef) { output.Write(asmRef); return; } if (o is ModuleRef modRef) { output.WriteModule(modRef.FullName); return; } if (o is ParamDef paramDef) { output.Write(BoxedTextColor.Parameter, IdentifierEscaper.Escape(paramDef.Name)); return; } // non-.NET file if (o is IDsDocument document) { output.Write(BoxedTextColor.Text, document.GetShortName()); return; } if (o is ResourceNode resNode) { output.WriteFilename(resNode.Name); return; } if (o is ResourceElementNode resElNode) { output.WriteFilename(resElNode.Name); return; } if (o is ErrorMessage em) { output.Write(em.Color, em.Text); return; } Debug.Assert(o == null); }
public void WriteModule(TabVM vm) => output.WriteModule(vm.Module);
/// <summary> /// Writes a module /// </summary> /// <param name="output">Output</param> /// <param name="language">Language</param> /// <param name="module">Module</param> /// <param name="showToken">true to write tokens</param> public void Write(ITextColorWriter output, ILanguage language, ModuleDef module, bool showToken) { output.WriteModule(module.Name); WriteToken(output, module, showToken); }