├── dnSpy.snk
├── images
├── analyzer.png
├── bgimg1.png
├── bgimg2.png
├── console.png
├── debug1.png
├── edit-il1.png
├── edit-il2.png
├── go-to-ep.png
├── md-ed1.png
├── md-ed2.png
├── search.png
├── tooltip.png
├── debug-save.png
├── edit-code.png
├── hexeditor.png
├── nightmare.png
├── scripting.png
├── tab-group.png
├── delete-method.png
├── edit-method.png
├── hilite-refs.png
├── edit-resources.png
├── go-to-md-token.png
├── hilite-keywords.png
├── more-vert-space.png
├── export-to-project.png
├── go-to-md-table-row.png
└── structure-visualizer.png
├── .gitattributes
├── dnSpy
├── dnSpy
│ ├── Images
│ │ ├── dnSpy.ico
│ │ ├── DefaultWatermarkDark.png
│ │ └── DefaultWatermarkLight.png
│ ├── project.json
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── MainApp
│ │ ├── App.xaml
│ │ ├── AskDlg.xaml.cs
│ │ ├── DsLoaderControl.xaml.cs
│ │ └── Settings
│ │ │ └── EnvironmentAppSettingsPageContainer.cs
│ ├── LicenseInfo
│ │ ├── CREDITS.txt
│ │ └── LICENSE.txt
│ ├── Text
│ │ ├── Editor
│ │ │ ├── ReplBufferKind.cs
│ │ │ ├── IAdornmentLayerDefinitionService.cs
│ │ │ ├── Search
│ │ │ │ └── SearchControl.xaml.cs
│ │ │ ├── IWpfTextViewConnectionListenerServiceProvider.cs
│ │ │ ├── MetadataAndOrder.cs
│ │ │ └── ReplSubBuffer.cs
│ │ ├── Formatting
│ │ │ ├── ITextFormatterProvider.cs
│ │ │ └── ITextParagraphPropertiesFactoryServiceSelector.cs
│ │ ├── Repl
│ │ │ ├── IReplOptions.cs
│ │ │ └── AppSettingsPageContainer.cs
│ │ └── CodeEditor
│ │ │ ├── ICodeEditorOptions.cs
│ │ │ └── AppSettingsPageContainer.cs
│ ├── Hex
│ │ ├── Files
│ │ │ └── DotNet
│ │ │ │ └── IDotNetHeap.cs
│ │ ├── Commands
│ │ │ ├── HexCommandConstants.cs
│ │ │ └── LocalSettingsDlg.xaml.cs
│ │ ├── Editor
│ │ │ ├── Search
│ │ │ │ ├── SearchControl.xaml.cs
│ │ │ │ └── HexDataKind.cs
│ │ │ ├── HexSpaceReservationStackProvider.cs
│ │ │ ├── HexAdornmentLayerDefinitionService.cs
│ │ │ └── MetadataAndOrder.cs
│ │ ├── Intellisense
│ │ │ └── HexQuickInfoPresenterControl.xaml.cs
│ │ └── HexEditor
│ │ │ └── AppSettingsPageContainer.cs
│ ├── Documents
│ │ └── Tabs
│ │ │ └── DocViewer
│ │ │ └── Settings
│ │ │ ├── IDocumentViewerOptions.cs
│ │ │ └── AppSettingsPageContainer.cs
│ ├── Output
│ │ ├── Settings
│ │ │ ├── IOutputWindowOptions.cs
│ │ │ └── AppSettingsPageContainer.cs
│ │ └── OutputControl.xaml.cs
│ ├── Settings
│ │ ├── AppearanceCategory
│ │ │ └── ITextAppearanceCategoryService.cs
│ │ ├── Dialog
│ │ │ ├── AppSettingsDlg.xaml.cs
│ │ │ └── UIHelpers.cs
│ │ ├── XmlSettingsConstants.cs
│ │ └── Fonts
│ │ │ └── DefaultFontInfo.cs
│ ├── Extension
│ │ └── LoadedExtension.cs
│ ├── Language
│ │ └── Intellisense
│ │ │ ├── CompletionIconVM.cs
│ │ │ ├── CompletionPresenterControl.xaml.cs
│ │ │ ├── QuickInfoPresenterControl.xaml.cs
│ │ │ └── SignatureHelpPresenterControl.xaml.cs
│ ├── Controls
│ │ └── IStackedContentChild.cs
│ ├── ToolBars
│ │ └── ToolBarItemContext.cs
│ └── Decompiler
│ │ └── DecompilerAppSettingsPageContainer.cs
├── dnSpy.Roslyn.Internal
│ ├── RoslynInternalKey.Private.snk
│ ├── project.json
│ ├── VBHelpers
│ │ ├── SyntaxNodeExtensions.cs
│ │ ├── SyntaxTokenExtensions.cs
│ │ ├── TextLineExtensions.cs
│ │ └── SyntaxTreeExtensions.cs
│ ├── QuickInfo
│ │ ├── IQuickInfoProvider.cs
│ │ ├── PredefinedQuickInfoProviderNames.cs
│ │ ├── QuickInfoItem.cs
│ │ ├── CSharp
│ │ │ └── SemanticQuickInfoProvider.cs
│ │ └── ExportQuickInfoProviderAttribute.cs
│ ├── Extensions
│ │ └── EnumerableExtensions.cs
│ └── SmartIndent
│ │ └── Helpers.cs
├── dnSpy.Roslyn.VisualBasic.Internal
│ ├── project.json
│ └── My Project
│ │ └── AssemblyInfo.vb
├── dnSpy.Roslyn.VisualBasic.EditorFeatures
│ ├── project.json
│ └── Dummy.vb
├── dnSpy.Roslyn.EditorFeatures
│ ├── project.json
│ ├── Extensions
│ │ └── DocumentHelpers.cs
│ ├── EditorFeaturesResources.cs
│ ├── Host
│ │ ├── IWaitContext.cs
│ │ └── IWaitIndicator.cs
│ ├── Editor
│ │ └── ContentTypeNames.cs
│ ├── Dummy.cs
│ └── SmartIndent
│ │ └── SmartIndentProvider.cs
├── dnSpy.Contracts.DnSpy
│ ├── project.json
│ ├── Documents
│ │ ├── IDsDocumentNameKey.cs
│ │ ├── IDsDotNetDocument.cs
│ │ ├── IDsPEDocument.cs
│ │ └── TreeView
│ │ │ ├── ResourcesFolderNode.cs
│ │ │ └── DerivedTypesFolderNode.cs
│ ├── Hex
│ │ ├── Files
│ │ │ ├── IBufferFileHeaders.cs
│ │ │ └── DotNet
│ │ │ │ └── TablesHeapType.cs
│ │ ├── Editor
│ │ │ ├── HexAdornmentLayerDefinition.cs
│ │ │ ├── HexSpaceReservationManagerDefinition.cs
│ │ │ └── HexGlyphTag.cs
│ │ ├── Tagging
│ │ │ └── HexTag.cs
│ │ └── Intellisense
│ │ │ └── IHexCustomIntellisensePresenter.cs
│ ├── Text
│ │ ├── LineConstants.cs
│ │ ├── Editor
│ │ │ ├── IDsTextView.cs
│ │ │ └── PredefinedDsMarginNames.cs
│ │ └── Classification
│ │ │ └── ITextClassifierAggregator.cs
│ ├── Scripting
│ │ └── Debugger
│ │ │ ├── IILBreakpoint.cs
│ │ │ ├── INativeBreakpoint.cs
│ │ │ ├── IAnyEventBreakpoint.cs
│ │ │ ├── AttachOptions.cs
│ │ │ ├── IEventBreakpoint.cs
│ │ │ └── DebuggerEventArgs.cs
│ ├── Themes
│ │ └── ThemeChangedEventArgs.cs
│ ├── Command
│ │ └── OutputTextPaneIds.cs
│ ├── TreeView
│ │ ├── IMDTokenNode.cs
│ │ ├── TreeViewConstants.cs
│ │ ├── ITreeNodeGroup.cs
│ │ └── TreeViewListenerEvent.cs
│ ├── Tabs
│ │ └── ITabServiceProvider.cs
│ ├── Settings
│ │ └── HexGroups
│ │ │ └── PredefinedHexViewGroupNames.cs
│ ├── Menus
│ │ └── IContextMenuProvider.cs
│ └── ToolBars
│ │ └── IToolBarItemContext.cs
├── dnSpy.Roslyn.Shared
│ ├── project.json
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Intellisense
│ │ └── QuickInfo
│ │ └── InformationQuickInfoContentControl.xaml.cs
├── dnSpy-x86
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Program.cs
├── dnSpy.Console
│ └── Properties
│ │ └── AssemblyInfo.cs
├── dnSpy.Contracts.Logic
│ └── Properties
│ │ └── AssemblyInfo.cs
└── dnSpy.Decompiler
│ └── MSBuild
│ ├── IJob.cs
│ ├── ProjectVersion.cs
│ ├── NoMSBuildProjectWriterLogger.cs
│ └── IMSBuildProjectWriterLogger.cs
├── .gitignore
├── Extensions
├── dnSpy.BamlDecompiler
│ ├── Annotations.cs
│ ├── project.json
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── BamlSettings.xaml
├── dnSpy.Analyzer
│ ├── project.json
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── TreeNodes
│ │ └── IAsyncCancellable.cs
├── dnSpy.AsmEditor
│ ├── project.json
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SaveModule
│ │ ├── SaveOptionsType.cs
│ │ └── SaveSingleModuleDlg.xaml.cs
│ ├── MethodBody
│ │ ├── MethodBodyType.cs
│ │ ├── MethodBodyDlg.xaml.cs
│ │ ├── SwitchOperandDlg.xaml.cs
│ │ └── IEditOperand.cs
│ ├── Commands
│ │ ├── IIndexedItem.cs
│ │ └── AsmEditorContext.cs
│ ├── UndoRedo
│ │ ├── IUndoObject.cs
│ │ └── IUndoableDocumentsProvider.cs
│ ├── Resources
│ │ ├── ResourceDlg.xaml.cs
│ │ ├── ImageListDlg.xaml.cs
│ │ ├── ResourceElementDlg.xaml.cs
│ │ └── ImageResourceElementDlg.xaml.cs
│ ├── Field
│ │ └── FieldOptionsDlg.xaml.cs
│ ├── Namespace
│ │ └── NamespaceDlg.xaml.cs
│ ├── Types
│ │ └── TypeOptionsDlg.xaml.cs
│ ├── Compiler
│ │ ├── EditCodeIds.cs
│ │ └── EditCodeCommandConstants.cs
│ ├── DnlibDialogs
│ │ ├── MemberRefDlg.xaml.cs
│ │ ├── ParamDefDlg.xaml.cs
│ │ ├── ImplMapControl.xaml.cs
│ │ ├── MethodSpecDlg.xaml.cs
│ │ ├── ConstantControl.xaml.cs
│ │ ├── ConstantTypeDlg.xaml.cs
│ │ ├── DeclSecurityDlg.xaml.cs
│ │ ├── GenericParamDlg.xaml.cs
│ │ ├── TypeSigCreatorDlg.xaml.cs
│ │ ├── CustomAttributeDlg.xaml.cs
│ │ ├── DeclSecurityControl.xaml.cs
│ │ ├── MarshalTypeControl.xaml.cs
│ │ ├── MethodSigCreatorDlg.xaml.cs
│ │ ├── SecurityAttributeDlg.xaml.cs
│ │ ├── TypeDefOrRefAndCADlg.xaml.cs
│ │ ├── CreateTypeSigArrayDlg.xaml.cs
│ │ ├── CANamedArgumentsControl.xaml.cs
│ │ ├── TypeDefOrRefAndCAControl.xaml.cs
│ │ ├── CreateTypeSigArrayControl.xaml.cs
│ │ └── Null.cs
│ ├── Method
│ │ └── MethodOptionsDlg.xaml.cs
│ ├── Module
│ │ ├── NetModuleOptionsDlg.xaml.cs
│ │ └── NetModuleOptions.cs
│ ├── Property
│ │ └── PropertyOptionsDlg.xaml.cs
│ ├── ExtensionMethods.cs
│ └── ViewHelpers
│ │ ├── ISelectItems.cs
│ │ ├── IOpenFile.cs
│ │ ├── IEdit.cs
│ │ └── IOpenPublicKeyFile.cs
├── Examples
│ ├── Example1.Extension
│ │ ├── project.json
│ │ ├── MySettingsControl.xaml.cs
│ │ ├── README.md
│ │ ├── TheExtension.cs
│ │ └── MySettingsControl.xaml
│ └── Example2.Extension
│ │ ├── project.json
│ │ ├── ToolWindowControl.xaml.cs
│ │ ├── TheExtension.cs
│ │ ├── README.md
│ │ └── DocumentViewerToolTipProvider.cs
├── dnSpy.Debugger
│ ├── dnSpy.Debugger
│ │ ├── project.json
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Exceptions
│ │ │ ├── ExceptionType.cs
│ │ │ └── ExceptionControl.xaml.cs
│ │ ├── IModuleIdHolder.cs
│ │ ├── ILoadBeforeDebug.cs
│ │ ├── AppMenus.cs
│ │ ├── Memory
│ │ │ └── MemoryControl.xaml.cs
│ │ ├── Breakpoints
│ │ │ └── DebugEventBreakpoint.cs
│ │ ├── DnModuleIdExtensions.cs
│ │ └── ModuleIdExtensions.cs
│ └── dndbg
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ └── Engine
│ │ └── CorDebugExtensions.cs
├── ILSpy.Decompiler
│ ├── dnSpy.Decompiler.ILSpy
│ │ ├── project.json
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ └── dnSpy.Decompiler.ILSpy.Core
│ │ └── Properties
│ │ └── AssemblyInfo.cs
└── dnSpy.Scripting.Roslyn
│ ├── project.json
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── CSharpInteractive.rsp
│ ├── VisualBasicInteractive.rsp
│ └── Common
│ └── ScriptControl.xaml.cs
├── DnlibCommon.props
├── appveyor.yml
├── .editorconfig
└── .gitmodules
/dnSpy.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/dnSpy.snk
--------------------------------------------------------------------------------
/images/analyzer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/analyzer.png
--------------------------------------------------------------------------------
/images/bgimg1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/bgimg1.png
--------------------------------------------------------------------------------
/images/bgimg2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/bgimg2.png
--------------------------------------------------------------------------------
/images/console.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/console.png
--------------------------------------------------------------------------------
/images/debug1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/debug1.png
--------------------------------------------------------------------------------
/images/edit-il1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/edit-il1.png
--------------------------------------------------------------------------------
/images/edit-il2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/edit-il2.png
--------------------------------------------------------------------------------
/images/go-to-ep.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/go-to-ep.png
--------------------------------------------------------------------------------
/images/md-ed1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/md-ed1.png
--------------------------------------------------------------------------------
/images/md-ed2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/md-ed2.png
--------------------------------------------------------------------------------
/images/search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/search.png
--------------------------------------------------------------------------------
/images/tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/tooltip.png
--------------------------------------------------------------------------------
/images/debug-save.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/debug-save.png
--------------------------------------------------------------------------------
/images/edit-code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/edit-code.png
--------------------------------------------------------------------------------
/images/hexeditor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/hexeditor.png
--------------------------------------------------------------------------------
/images/nightmare.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/nightmare.png
--------------------------------------------------------------------------------
/images/scripting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/scripting.png
--------------------------------------------------------------------------------
/images/tab-group.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/tab-group.png
--------------------------------------------------------------------------------
/images/delete-method.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/delete-method.png
--------------------------------------------------------------------------------
/images/edit-method.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/edit-method.png
--------------------------------------------------------------------------------
/images/hilite-refs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/hilite-refs.png
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | *.cs text diff=csharp
3 | *.sln text eol=crlf
4 | *.csproj text eol=crlf
5 |
--------------------------------------------------------------------------------
/images/edit-resources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/edit-resources.png
--------------------------------------------------------------------------------
/images/go-to-md-token.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/go-to-md-token.png
--------------------------------------------------------------------------------
/images/hilite-keywords.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/hilite-keywords.png
--------------------------------------------------------------------------------
/images/more-vert-space.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/more-vert-space.png
--------------------------------------------------------------------------------
/dnSpy/dnSpy/Images/dnSpy.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/dnSpy/dnSpy/Images/dnSpy.ico
--------------------------------------------------------------------------------
/images/export-to-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/export-to-project.png
--------------------------------------------------------------------------------
/images/go-to-md-table-row.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/go-to-md-table-row.png
--------------------------------------------------------------------------------
/images/structure-visualizer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/images/structure-visualizer.png
--------------------------------------------------------------------------------
/dnSpy/dnSpy/Images/DefaultWatermarkDark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/dnSpy/dnSpy/Images/DefaultWatermarkDark.png
--------------------------------------------------------------------------------
/dnSpy/dnSpy/Images/DefaultWatermarkLight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/dnSpy/dnSpy/Images/DefaultWatermarkLight.png
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/RoslynInternalKey.Private.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/XenocodeRCE/dnSpy/master/dnSpy/dnSpy.Roslyn.Internal/RoslynInternalKey.Private.snk
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .vs/
2 | bin/
3 | obj/
4 | *.suo
5 | *.user
6 | _ReSharper*/
7 | *.ReSharper
8 | *.patch
9 | /packages
10 | *.ide/
11 | *.tmp_proj
12 | project.lock.json
13 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.BamlDecompiler/Annotations.cs:
--------------------------------------------------------------------------------
1 | namespace dnSpy.BamlDecompiler {
2 | internal class BamlConnectionId {
3 | public uint Id { get; }
4 |
5 | public BamlConnectionId(uint id) {
6 | Id = id;
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/Extensions/dnSpy.Analyzer/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.AsmEditor/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.BamlDecompiler/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example1.Extension/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example2.Extension/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Debugger/dnSpy.Debugger/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.VisualBasic.Internal/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.CodeAnalysis.VisualBasic.Features": "2.0.0-rc2"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/DnlibCommon.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | THREAD_SAFE
5 |
6 |
--------------------------------------------------------------------------------
/Extensions/ILSpy.Decompiler/dnSpy.Decompiler.ILSpy/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
4 | },
5 | "frameworks": {
6 | "net46": { }
7 | },
8 | "runtimes": {
9 | "win": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example1.Extension/MySettingsControl.xaml.cs:
--------------------------------------------------------------------------------
1 | using System.Windows.Controls;
2 |
3 | namespace Example1.Extension {
4 | public partial class MySettingsControl : UserControl {
5 | public MySettingsControl() {
6 | InitializeComponent();
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example2.Extension/ToolWindowControl.xaml.cs:
--------------------------------------------------------------------------------
1 | using System.Windows.Controls;
2 |
3 | namespace Example2.Extension {
4 | public partial class ToolWindowControl : UserControl {
5 | public ToolWindowControl() {
6 | InitializeComponent();
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.CodeAnalysis.CSharp.Features": "2.0.0-rc2",
4 | "Microsoft.CodeAnalysis.VisualBasic.Features": "2.0.0-rc2"
5 | },
6 | "frameworks": {
7 | "net46": { }
8 | },
9 | "runtimes": {
10 | "win": { }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.VisualBasic.EditorFeatures/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.CodeAnalysis.VisualBasic.Features": "2.0.0-rc2",
4 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
5 | },
6 | "frameworks": {
7 | "net46": { }
8 | },
9 | "runtimes": {
10 | "win": { }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.EditorFeatures/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.CodeAnalysis.CSharp.Features": "2.0.0-rc2",
4 | "Microsoft.CodeAnalysis.VisualBasic.Features": "2.0.0-rc2",
5 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC"
6 | },
7 | "frameworks": {
8 | "net46": { }
9 | },
10 | "runtimes": {
11 | "win": { }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC",
4 | "Microsoft.VisualStudio.Language.Intellisense": "15.0.25824-RC",
5 | "Microsoft.VisualStudio.Imaging.Interop.14.0.DesignTime": "15.0.25726-Preview5"
6 | },
7 | "frameworks": {
8 | "net46": { }
9 | },
10 | "runtimes": {
11 | "win": { }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/VBHelpers/SyntaxNodeExtensions.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.CodeAnalysis;
2 |
3 | namespace dnSpy.Roslyn.Internal.VBHelpers {
4 | static class SyntaxNodeExtensions2 {
5 | public static TNode GetAncestorOrThis(this SyntaxNode node) where TNode : SyntaxNode => Microsoft.CodeAnalysis.Shared.Extensions.SyntaxNodeExtensions.GetAncestorOrThis(node);
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Contracts.DnSpy/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC",
4 | "Microsoft.VisualStudio.Language.Intellisense": "15.0.25824-RC",
5 | "Microsoft.VisualStudio.Imaging.Interop.14.0.DesignTime": "15.0.25726-Preview5"
6 | },
7 | "frameworks": {
8 | "net46": { }
9 | },
10 | "runtimes": {
11 | "win": { }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/VBHelpers/SyntaxTokenExtensions.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Microsoft.CodeAnalysis;
3 |
4 | namespace dnSpy.Roslyn.Internal.VBHelpers {
5 | static class SyntaxTokenExtensions2 {
6 | public static T GetAncestor(this SyntaxToken token, Func predicate = null) where T : SyntaxNode => Microsoft.CodeAnalysis.Shared.Extensions.SyntaxTokenExtensions.GetAncestor(token, predicate);
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Scripting.Roslyn/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "System.ValueTuple": "4.3.0",
4 | "Microsoft.CodeAnalysis.CSharp.Scripting": "2.0.0-rc2",
5 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC",
6 | // Required after updating to 2.0.0-rc
7 | "System.Runtime.InteropServices.RuntimeInformation": "4.0.0"
8 | },
9 | "frameworks": {
10 | "net46": { }
11 | },
12 | "runtimes": {
13 | "win": { }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/appveyor.yml:
--------------------------------------------------------------------------------
1 | version: x.x.{build}
2 | branches:
3 | only:
4 | - master
5 | image: Visual Studio 2015
6 | configuration: Release
7 | install:
8 | - cmd: git submodule update --init --recursive
9 | nuget:
10 | disable_publish_on_pr: true
11 | before_build:
12 | - cmd: appveyor-retry nuget restore
13 | build:
14 | project: dnSpy.sln
15 | parallel: true
16 | verbosity: normal
17 | artifacts:
18 | - path: dnSpy/dnSpy/bin/Release
19 | name: dnSpy
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Shared/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.CodeAnalysis.CSharp.Features": "2.0.0-rc2",
4 | "Microsoft.CodeAnalysis.VisualBasic.Features": "2.0.0-rc2",
5 | "Microsoft.VisualStudio.Text.UI.Wpf": "15.0.25824-RC",
6 | "Microsoft.VisualStudio.Language.Intellisense": "15.0.25824-RC",
7 | "Microsoft.VisualStudio.Imaging.Interop.14.0.DesignTime": "15.0.25726-Preview5"
8 | },
9 | "frameworks": {
10 | "net46": { }
11 | },
12 | "runtimes": {
13 | "win": { }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/VBHelpers/TextLineExtensions.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.CodeAnalysis.Text;
2 |
3 | namespace dnSpy.Roslyn.Internal.VBHelpers {
4 | static class TextLineExtensions2 {
5 | public static int? GetLastNonWhitespacePosition(this TextLine line) => Microsoft.CodeAnalysis.Shared.Extensions.TextLineExtensions.GetLastNonWhitespacePosition(line);
6 | public static int? GetFirstNonWhitespacePosition(this TextLine line) => Microsoft.CodeAnalysis.Shared.Extensions.TextLineExtensions.GetFirstNonWhitespacePosition(line);
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = tab
5 | indent_size = 4
6 | insert_final_newline = true
7 |
8 | [App.config]
9 |
10 | [*.yml]
11 | indent_style = space
12 | indent_size = 2
13 |
14 | [*.{proj,csproj,vbproj,props,targets,resx,vsixmanifest}]
15 | indent_style = space
16 | indent_size = 2
17 |
18 | [app.manifest]
19 | indent_style = space
20 | indent_size = 2
21 |
22 | [*.xaml]
23 | indent_style = space
24 |
25 | [*.cs]
26 | #TODO: https://github.com/dotnet/roslyn/pull/15020
27 | #TODO: https://github.com/dotnet/roslyn/pull/15029
28 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/QuickInfo/IQuickInfoProvider.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | using System.Threading;
4 | using System.Threading.Tasks;
5 | using Microsoft.CodeAnalysis;
6 |
7 | namespace dnSpy.Roslyn.Internal.QuickInfo
8 | {
9 | internal interface IQuickInfoProvider
10 | {
11 | Task GetItemAsync(Document document, int position, CancellationToken cancellationToken);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example1.Extension/README.md:
--------------------------------------------------------------------------------
1 |
2 | This extension shows how to do the basic things. It:
3 |
4 | - Reads and writes settings (MySettings.cs)
5 | - Adds a page to the options dialog box showing some of the options (MySettingsPage.cs)
6 | - Adds options to the text editor's context menu and a Ctrl+Alt+Q keyboard shortcut (CodeCtxMenus.cs)
7 | - Adds treeview context menus (TreeViewCtxMenus.cs)
8 | - Adds a "_Extension" menu and menu items and a View menu command (MainMenuCommands.cs)
9 | - Adds a button and a combobox to the toolbar (ToolBarCommands.cs)
10 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy-x86/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy-x86")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy-x86")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Debugger/dndbg/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dndbg")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dndbg")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.AsmEditor/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("AsmEditor")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("AsmEditor")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Console/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy.Console")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy.Console")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.BamlDecompiler/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy.BamlDecompiler")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy.BamlDecompiler")]
10 | [assembly: AssemblyCopyright("Copyright © Ki 2015")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Debugger/dnSpy.Debugger/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("Debugger")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("Debugger")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/QuickInfo/PredefinedQuickInfoProviderNames.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | namespace dnSpy.Roslyn.Internal.QuickInfo
4 | {
5 | internal static class PredefinedQuickInfoProviderNames
6 | {
7 | public const string EventHookup = "Event Hookup QuickInfo Source";
8 | public const string Semantic = "Semantic Quick Info Provider";
9 | public const string Syntactic = "Syntactic Quick Info Provider";
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Analyzer/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("Analyzer")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("Analyzer")]
10 | [assembly: AssemblyCopyright("Copyright 2011-2014 AlphaSierraPapa for the SharpDevelop Team")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Contracts.Logic/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy.Contracts.Logic")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy.Contracts.Logic")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/MainApp/App.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.EditorFeatures/Extensions/DocumentHelpers.cs:
--------------------------------------------------------------------------------
1 | using System.Threading;
2 | using Microsoft.CodeAnalysis;
3 |
4 | namespace dnSpy.Roslyn.EditorFeatures.Extensions {
5 | static class DocumentHelpers {
6 | public static SyntaxTree GetSyntaxTreeSynchronously(Document document, CancellationToken cancellationToken) {
7 | //TODO: Roslyn 2.0: use document.GetSyntaxTreeSynchronously()
8 | SyntaxTree syntaxTree;
9 | if (document.TryGetSyntaxTree(out syntaxTree))
10 | return syntaxTree;
11 | return document.GetSyntaxTreeAsync(cancellationToken).GetAwaiter().GetResult();
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Scripting.Roslyn/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy.Scripting.Roslyn")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy.Scripting.Roslyn")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/LicenseInfo/CREDITS.txt:
--------------------------------------------------------------------------------
1 | dnSpy credits:
2 |
3 | 0xd4d
4 | Ki
5 |
6 |
7 | ILSpy decompiler and analyzer credits:
8 |
9 | Daniel Grunwald
10 | David Srbecky
11 | Ed Harvey
12 | Siegfried Pammer
13 | Artur Zgodzinski
14 | Eusebiu Marcu
15 | Pent Ploompuu
16 | Ki
17 | 0xd4d
18 |
19 |
20 | Translators:
21 |
22 | Chinese Simplified:
23 |
24 | Ulysses Wu
25 | YanJun Sun
26 | iFish
27 | SquallATF
28 | linkinshi
29 |
30 | Russian:
31 |
32 | Igor Besedin
33 | Konctantin
34 | Daniil Yarancev
35 |
36 | Portuguese:
37 |
38 | Raphael Aquiles
39 |
40 | German:
41 |
42 | patricksadowski
43 | li0nsar3c00l
44 |
--------------------------------------------------------------------------------
/Extensions/ILSpy.Decompiler/dnSpy.Decompiler.ILSpy/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Resources;
3 | using System.Runtime.InteropServices;
4 |
5 | [assembly: AssemblyTitle("dnSpy.Decompiler.ILSpy.x")]
6 | [assembly: AssemblyDescription("")]
7 | [assembly: AssemblyConfiguration("")]
8 | [assembly: AssemblyCompany("")]
9 | [assembly: AssemblyProduct("dnSpy.Decompiler.ILSpy.x")]
10 | [assembly: AssemblyCopyright("Copyright (C) 2014-2016 de4dot@gmail.com")]
11 | [assembly: AssemblyTrademark("")]
12 | [assembly: AssemblyCulture("")]
13 | [assembly: ComVisible(false)]
14 | [assembly: NeutralResourcesLanguage("en")]
15 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/QuickInfo/QuickInfoItem.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | using Microsoft.CodeAnalysis.Text;
4 |
5 | namespace dnSpy.Roslyn.Internal.QuickInfo
6 | {
7 | internal class QuickInfoItem
8 | {
9 | public TextSpan TextSpan { get; }
10 | public QuickInfoContent Content { get; }
11 |
12 | public QuickInfoItem(TextSpan textSpan, QuickInfoContent content)
13 | {
14 | this.TextSpan = textSpan;
15 | this.Content = content;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.EditorFeatures/EditorFeaturesResources.cs:
--------------------------------------------------------------------------------
1 | // The strings resources is an empty class because we don't need the strings at the moment.
2 | // They're currently passed to IWaitIndicator which ignore them.
3 |
4 | namespace dnSpy.Roslyn.EditorFeatures {
5 | static class EditorFeaturesResources {
6 | public static string Finding_enclosing_span { get; internal set; }
7 | public static string Finding_span_of_next_sibling { get; internal set; }
8 | public static string Finding_span_of_previous_sibling { get; internal set; }
9 | public static string Finding_word_extent { get; internal set; }
10 | public static string Text_Navigation { get; internal set; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example2.Extension/TheExtension.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using dnSpy.Contracts.Extension;
3 |
4 | // Each extension should export one class implementing IExtension
5 |
6 | namespace Example2.Extension {
7 | [ExportExtension]
8 | sealed class TheExtension : IExtension {
9 | public IEnumerable MergedResourceDictionaries {
10 | get {
11 | yield return "Themes/resourcedict.xaml";
12 | }
13 | }
14 |
15 | public ExtensionInfo ExtensionInfo => new ExtensionInfo {
16 | ShortDescription = "Example2 extension",
17 | };
18 |
19 | public void OnEvent(ExtensionEvent @event, object obj) {
20 | // We don't care about any events
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "Libraries/dnlib"]
2 | path = Libraries/dnlib
3 | url = https://github.com/0xd4d/dnlib.git
4 | [submodule "Plugins/ILSpy.Decompiler/NRefactory"]
5 | path = Extensions/ILSpy.Decompiler/NRefactory
6 | url = https://github.com/0xd4d/nrefactory.git
7 | [submodule "Libraries/ICSharpCode.TreeView"]
8 | path = Libraries/ICSharpCode.TreeView
9 | url = https://github.com/0xd4d/ICSharpCode.TreeView.git
10 | [submodule "Plugins/ILSpy.Decompiler/ICSharpCode.Decompiler"]
11 | path = Extensions/ILSpy.Decompiler/ICSharpCode.Decompiler
12 | url = https://github.com/0xd4d/ILSpy.git
13 | [submodule "dnSpy/dnSpy.Images"]
14 | path = dnSpy/dnSpy.Images
15 | url = https://github.com/0xd4d/dnSpy.Images.git
16 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Scripting.Roslyn/CSharpInteractive.rsp:
--------------------------------------------------------------------------------
1 | # C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\CSharpInteractive.rsp
2 | /r:System
3 | /r:System.Core
4 | /r:Microsoft.CSharp
5 | /u:System
6 | /u:System.IO
7 | /u:System.Collections.Generic
8 | #/u:System.Console
9 | /u:System.Diagnostics
10 | /u:System.Dynamic
11 | /u:System.Linq
12 | /u:System.Linq.Expressions
13 | /u:System.Text
14 | /u:System.Threading.Tasks
15 |
16 | # Add extra stuff
17 | /r:System.ValueTuple.dll
18 | /r:dnSpy.Contracts.Logic.dll
19 | /r:dnSpy.Contracts.DnSpy.dll
20 | /r:dnlib.dll
21 | /u:dnSpy.Contracts.Scripting
22 | /u:dnSpy.Contracts.Scripting.Roslyn
23 | # For TextColor
24 | /u:dnSpy.Contracts.Text
25 |
--------------------------------------------------------------------------------
/Extensions/dnSpy.Scripting.Roslyn/VisualBasicInteractive.rsp:
--------------------------------------------------------------------------------
1 | /R:System
2 | /R:System.Core
3 | /R:System.Data
4 | /R:System.Data.DataSetExtensions
5 | /R:System.Xml
6 | /R:System.Xml.Linq
7 | /Imports:Microsoft.VisualBasic
8 | /Imports:System
9 | /Imports:System.Collections
10 | /Imports:System.Collections.Generic
11 | #/Imports:System.Console
12 | /Imports:System.Data
13 | /Imports:System.Diagnostics
14 | /Imports:System.Linq
15 | /Imports:System.Xml.Linq
16 |
17 | # Add extra stuff
18 | /R:System.ValueTuple.dll
19 | /R:dnSpy.Contracts.Logic.dll
20 | /R:dnSpy.Contracts.DnSpy.dll
21 | /R:dnlib.dll
22 | /Imports:dnSpy.Contracts.Scripting
23 | /Imports:dnSpy.Contracts.Scripting.Roslyn
24 | # For TextColor
25 | /Imports:dnSpy.Contracts.Text
26 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example1.Extension/TheExtension.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using dnSpy.Contracts.Extension;
3 |
4 | // Each extension should export one class implementing IExtension
5 |
6 | namespace Example1.Extension {
7 | [ExportExtension]
8 | sealed class TheExtension : IExtension {
9 | public IEnumerable MergedResourceDictionaries {
10 | get {
11 | // We don't have any extra resource dictionaries
12 | yield break;
13 | }
14 | }
15 |
16 | public ExtensionInfo ExtensionInfo => new ExtensionInfo {
17 | ShortDescription = "Example1 extension",
18 | };
19 |
20 | public void OnEvent(ExtensionEvent @event, object obj) {
21 | // We don't care about any events
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.EditorFeatures/Host/IWaitContext.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | using System;
4 | using System.Threading;
5 | using Microsoft.CodeAnalysis.Shared.Utilities;
6 |
7 | namespace dnSpy.Roslyn.EditorFeatures.Host
8 | {
9 | internal enum WaitIndicatorResult
10 | {
11 | Completed,
12 | Canceled,
13 | }
14 |
15 | internal interface IWaitContext : IDisposable
16 | {
17 | CancellationToken CancellationToken { get; }
18 |
19 | bool AllowCancel { get; set; }
20 | string Message { get; set; }
21 |
22 | IProgressTracker ProgressTracker { get; }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/VBHelpers/SyntaxTreeExtensions.cs:
--------------------------------------------------------------------------------
1 | using System.Threading;
2 | using Microsoft.CodeAnalysis;
3 |
4 | namespace dnSpy.Roslyn.Internal.VBHelpers {
5 | static class SyntaxTreeExtensions2 {
6 | public static SyntaxToken FindTokenOnLeftOfPosition(
7 | this SyntaxTree syntaxTree,
8 | int position,
9 | CancellationToken cancellationToken,
10 | bool includeSkipped = true,
11 | bool includeDirectives = false,
12 | bool includeDocumentationComments = false) =>
13 | Microsoft.CodeAnalysis.Shared.Extensions.SyntaxTreeExtensions.FindTokenOnLeftOfPosition(
14 | syntaxTree,
15 | position,
16 | cancellationToken,
17 | includeSkipped,
18 | includeDirectives,
19 | includeDocumentationComments);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.EditorFeatures/Editor/ContentTypeNames.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | namespace dnSpy.Roslyn.EditorFeatures.Editor
4 | {
5 | internal static class ContentTypeNames
6 | {
7 | public const string CSharpContentType = "CSharp";
8 | public const string CSharpSignatureHelpContentType = "CSharp Signature Help";
9 | public const string RoslynContentType = "Roslyn Languages";
10 | public const string VisualBasicContentType = "Basic";
11 | public const string VisualBasicSignatureHelpContentType = "Basic Signature Help";
12 | public const string XamlContentType = "XAML";
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example1.Extension/MySettingsControl.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/Extensions/Examples/Example2.Extension/README.md:
--------------------------------------------------------------------------------
1 |
2 | This extension shows how to do more advanced stuff. It:
3 |
4 | - Adds a tool window (ToolWindowContent.cs)
5 | - Adds new tree nodes (TreeNodeDataProvider.cs)
6 | - Adds custom tab content for the new AssemblyChildNode tree node (AssemblyChildNodeTabContent.cs). ModuleChildNode implements IDecompileSelf to decompile itself.
7 | - Shows tooltips when hovering over custom references added to the text editor (DocumentViewerToolTipProvider.cs)
8 | - Adds a new IDsDocument instance and DsDocumentNode node (NewDsDocument.cs). It opens .txt files and shows the output in the text editor.
9 | - Colorizes text in text editors (Colorizer.cs)
10 | - Colorizes text in hex editors (HexColorizer.cs)
11 | - Colorizes Assembly Explorer treeview nodes (TreeViewNodeColorizer.cs)
12 | - Adds a new Output window text pane (OutputTextPane.cs)
13 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/LicenseInfo/LICENSE.txt:
--------------------------------------------------------------------------------
1 | dnSpy is released under the GPLv3 license, see GPLv3.txt for more information.
2 |
3 | Copyright (C) 2014-2016 de4dot@gmail.com
4 |
5 | This file is part of dnSpy
6 |
7 | dnSpy is free software: you can redistribute it and/or modify
8 | it under the terms of the GNU General Public License as published by
9 | the Free Software Foundation, either version 3 of the License, or
10 | (at your option) any later version.
11 |
12 | dnSpy is distributed in the hope that it will be useful,
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | GNU General Public License for more details.
16 |
17 | You should have received a copy of the GNU General Public License
18 | along with dnSpy. If not, see .
19 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/QuickInfo/CSharp/SemanticQuickInfoProvider.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | using System.Composition;
4 | using Microsoft.CodeAnalysis;
5 | using Microsoft.CodeAnalysis.CSharp;
6 |
7 | namespace dnSpy.Roslyn.Internal.QuickInfo.CSharp
8 | {
9 | [ExportQuickInfoProvider(PredefinedQuickInfoProviderNames.Semantic, LanguageNames.CSharp)]
10 | internal class SemanticQuickInfoProvider : AbstractSemanticQuickInfoProvider
11 | {
12 | [ImportingConstructor]
13 | public SemanticQuickInfoProvider()
14 | {
15 | }
16 |
17 | protected override bool ShouldCheckPreviousToken(SyntaxToken token)
18 | {
19 | return !token.Parent.IsKind(SyntaxKind.XmlCrefAttribute);
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy/Text/Editor/ReplBufferKind.cs:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (C) 2014-2016 de4dot@gmail.com
3 |
4 | This file is part of dnSpy
5 |
6 | dnSpy is free software: you can redistribute it and/or modify
7 | it under the terms of the GNU General Public License as published by
8 | the Free Software Foundation, either version 3 of the License, or
9 | (at your option) any later version.
10 |
11 | dnSpy is distributed in the hope that it will be useful,
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 | GNU General Public License for more details.
15 |
16 | You should have received a copy of the GNU General Public License
17 | along with dnSpy. If not, see .
18 | */
19 |
20 | namespace dnSpy.Text.Editor {
21 | enum ReplBufferKind {
22 | Output,
23 | Code,
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/dnSpy/dnSpy.Roslyn.Internal/Extensions/EnumerableExtensions.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
2 |
3 | using System;
4 | using System.Collections;
5 | using System.Collections.Generic;
6 | using System.Collections.ObjectModel;
7 | using System.Diagnostics;
8 | using System.Linq;
9 |
10 | namespace dnSpy.Roslyn.Internal.Extensions {
11 | static class EnumerableExtensions2 {
12 | private static readonly Func