diff --git a/.vs/Notepad Ultra/v14/.suo b/.vs/Notepad Ultra/v14/.suo new file mode 100644 index 0000000..a9f1e7e Binary files /dev/null and b/.vs/Notepad Ultra/v14/.suo differ diff --git a/.vs/config/applicationhost.config b/.vs/config/applicationhost.config new file mode 100644 index 0000000..59f79bc --- /dev/null +++ b/.vs/config/applicationhost.config @@ -0,0 +1,1030 @@ + + + + + + + + +
+
+
+
+
+
+
+
+ + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+
+ + +
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Notepad Ultra.sln b/Notepad Ultra.sln new file mode 100644 index 0000000..53c73f4 --- /dev/null +++ b/Notepad Ultra.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Notepad Ultra", "Notepad Ultra\Notepad Ultra.vbproj", "{3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Debug|x86.ActiveCfg = Debug|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Debug|x86.Build.0 = Debug|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Release|Any CPU.Build.0 = Release|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Release|x86.ActiveCfg = Release|Any CPU + {3857ABB1-DDBF-41B1-81CA-B9D8D00B2CF7}.Release|x86.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Notepad Ultra.v12.suo b/Notepad Ultra.v12.suo new file mode 100644 index 0000000..0dc19af Binary files /dev/null and b/Notepad Ultra.v12.suo differ diff --git a/About.Designer.vb b/Notepad Ultra/About.Designer.vb similarity index 100% rename from About.Designer.vb rename to Notepad Ultra/About.Designer.vb diff --git a/About.resx b/Notepad Ultra/About.resx similarity index 100% rename from About.resx rename to Notepad Ultra/About.resx diff --git a/About.vb b/Notepad Ultra/About.vb similarity index 100% rename from About.vb rename to Notepad Ultra/About.vb diff --git a/App.config b/Notepad Ultra/App.config similarity index 100% rename from App.config rename to Notepad Ultra/App.config diff --git a/ApplicationEvents.vb b/Notepad Ultra/ApplicationEvents.vb similarity index 100% rename from ApplicationEvents.vb rename to Notepad Ultra/ApplicationEvents.vb diff --git a/Changelog.txt b/Notepad Ultra/Changelog.txt similarity index 100% rename from Changelog.txt rename to Notepad Ultra/Changelog.txt diff --git a/Changelog.vb b/Notepad Ultra/Changelog.vb similarity index 100% rename from Changelog.vb rename to Notepad Ultra/Changelog.vb diff --git a/ChangelogViewer.Designer.vb b/Notepad Ultra/ChangelogViewer.Designer.vb similarity index 100% rename from ChangelogViewer.Designer.vb rename to Notepad Ultra/ChangelogViewer.Designer.vb diff --git a/ChangelogViewer.resx b/Notepad Ultra/ChangelogViewer.resx similarity index 100% rename from ChangelogViewer.resx rename to Notepad Ultra/ChangelogViewer.resx diff --git a/ChangelogViewer.vb b/Notepad Ultra/ChangelogViewer.vb similarity index 100% rename from ChangelogViewer.vb rename to Notepad Ultra/ChangelogViewer.vb diff --git a/Customise Colours.Designer.vb b/Notepad Ultra/Customise Colours.Designer.vb similarity index 100% rename from Customise Colours.Designer.vb rename to Notepad Ultra/Customise Colours.Designer.vb diff --git a/Customise Colours.resx b/Notepad Ultra/Customise Colours.resx similarity index 100% rename from Customise Colours.resx rename to Notepad Ultra/Customise Colours.resx diff --git a/Customise Colours.vb b/Notepad Ultra/Customise Colours.vb similarity index 100% rename from Customise Colours.vb rename to Notepad Ultra/Customise Colours.vb diff --git a/Extensions.vb b/Notepad Ultra/Extensions.vb similarity index 100% rename from Extensions.vb rename to Notepad Ultra/Extensions.vb diff --git a/Find.Designer.vb b/Notepad Ultra/Find.Designer.vb similarity index 100% rename from Find.Designer.vb rename to Notepad Ultra/Find.Designer.vb diff --git a/Find.resx b/Notepad Ultra/Find.resx similarity index 100% rename from Find.resx rename to Notepad Ultra/Find.resx diff --git a/Find.vb b/Notepad Ultra/Find.vb similarity index 100% rename from Find.vb rename to Notepad Ultra/Find.vb diff --git a/FindCommon.vb b/Notepad Ultra/FindCommon.vb similarity index 100% rename from FindCommon.vb rename to Notepad Ultra/FindCommon.vb diff --git a/FindReplace.Designer.vb b/Notepad Ultra/FindReplace.Designer.vb similarity index 100% rename from FindReplace.Designer.vb rename to Notepad Ultra/FindReplace.Designer.vb diff --git a/FindReplace.resx b/Notepad Ultra/FindReplace.resx similarity index 100% rename from FindReplace.resx rename to Notepad Ultra/FindReplace.resx diff --git a/FindReplace.vb b/Notepad Ultra/FindReplace.vb similarity index 100% rename from FindReplace.vb rename to Notepad Ultra/FindReplace.vb diff --git a/Form1.Designer.vb b/Notepad Ultra/Form1.Designer.vb similarity index 100% rename from Form1.Designer.vb rename to Notepad Ultra/Form1.Designer.vb diff --git a/Form1.resx b/Notepad Ultra/Form1.resx similarity index 100% rename from Form1.resx rename to Notepad Ultra/Form1.resx diff --git a/Form1.vb b/Notepad Ultra/Form1.vb similarity index 100% rename from Form1.vb rename to Notepad Ultra/Form1.vb diff --git a/LoadTimeWarning.Designer.vb b/Notepad Ultra/LoadTimeWarning.Designer.vb similarity index 100% rename from LoadTimeWarning.Designer.vb rename to Notepad Ultra/LoadTimeWarning.Designer.vb diff --git a/LoadTimeWarning.resx b/Notepad Ultra/LoadTimeWarning.resx similarity index 100% rename from LoadTimeWarning.resx rename to Notepad Ultra/LoadTimeWarning.resx diff --git a/LoadTimeWarning.vb b/Notepad Ultra/LoadTimeWarning.vb similarity index 100% rename from LoadTimeWarning.vb rename to Notepad Ultra/LoadTimeWarning.vb diff --git a/My Project/Application.Designer.vb b/Notepad Ultra/My Project/Application.Designer.vb similarity index 100% rename from My Project/Application.Designer.vb rename to Notepad Ultra/My Project/Application.Designer.vb diff --git a/My Project/Application.myapp b/Notepad Ultra/My Project/Application.myapp similarity index 100% rename from My Project/Application.myapp rename to Notepad Ultra/My Project/Application.myapp diff --git a/My Project/AssemblyInfo.vb b/Notepad Ultra/My Project/AssemblyInfo.vb similarity index 100% rename from My Project/AssemblyInfo.vb rename to Notepad Ultra/My Project/AssemblyInfo.vb diff --git a/My Project/Resources.Designer.vb b/Notepad Ultra/My Project/Resources.Designer.vb similarity index 100% rename from My Project/Resources.Designer.vb rename to Notepad Ultra/My Project/Resources.Designer.vb diff --git a/My Project/Resources.resx b/Notepad Ultra/My Project/Resources.resx similarity index 100% rename from My Project/Resources.resx rename to Notepad Ultra/My Project/Resources.resx diff --git a/My Project/Settings.Designer.vb b/Notepad Ultra/My Project/Settings.Designer.vb similarity index 100% rename from My Project/Settings.Designer.vb rename to Notepad Ultra/My Project/Settings.Designer.vb diff --git a/My Project/Settings.settings b/Notepad Ultra/My Project/Settings.settings similarity index 100% rename from My Project/Settings.settings rename to Notepad Ultra/My Project/Settings.settings diff --git a/My Project/app.manifest b/Notepad Ultra/My Project/app.manifest similarity index 100% rename from My Project/app.manifest rename to Notepad Ultra/My Project/app.manifest diff --git a/Notepad Ultra.Designer.vb b/Notepad Ultra/Notepad Ultra.Designer.vb similarity index 100% rename from Notepad Ultra.Designer.vb rename to Notepad Ultra/Notepad Ultra.Designer.vb diff --git a/Notepad Ultra.resx b/Notepad Ultra/Notepad Ultra.resx similarity index 100% rename from Notepad Ultra.resx rename to Notepad Ultra/Notepad Ultra.resx diff --git a/Notepad Ultra.vb b/Notepad Ultra/Notepad Ultra.vb similarity index 100% rename from Notepad Ultra.vb rename to Notepad Ultra/Notepad Ultra.vb diff --git a/Notepad Ultra.vbproj b/Notepad Ultra/Notepad Ultra.vbproj similarity index 100% rename from Notepad Ultra.vbproj rename to Notepad Ultra/Notepad Ultra.vbproj diff --git a/Notepad Ultra.vbproj.user b/Notepad Ultra/Notepad Ultra.vbproj.user similarity index 100% rename from Notepad Ultra.vbproj.user rename to Notepad Ultra/Notepad Ultra.vbproj.user diff --git a/Notepad Ultra_TemporaryKey.pfx b/Notepad Ultra/Notepad Ultra_TemporaryKey.pfx similarity index 100% rename from Notepad Ultra_TemporaryKey.pfx rename to Notepad Ultra/Notepad Ultra_TemporaryKey.pfx diff --git a/Open Passed File.Designer.vb b/Notepad Ultra/Open Passed File.Designer.vb similarity index 100% rename from Open Passed File.Designer.vb rename to Notepad Ultra/Open Passed File.Designer.vb diff --git a/Open Passed File.resx b/Notepad Ultra/Open Passed File.resx similarity index 100% rename from Open Passed File.resx rename to Notepad Ultra/Open Passed File.resx diff --git a/Open Passed File.vb b/Notepad Ultra/Open Passed File.vb similarity index 100% rename from Open Passed File.vb rename to Notepad Ultra/Open Passed File.vb diff --git a/Passed File Action Settings.Designer.vb b/Notepad Ultra/Passed File Action Settings.Designer.vb similarity index 100% rename from Passed File Action Settings.Designer.vb rename to Notepad Ultra/Passed File Action Settings.Designer.vb diff --git a/Passed File Action Settings.resx b/Notepad Ultra/Passed File Action Settings.resx similarity index 100% rename from Passed File Action Settings.resx rename to Notepad Ultra/Passed File Action Settings.resx diff --git a/Passed File Action Settings.vb b/Notepad Ultra/Passed File Action Settings.vb similarity index 100% rename from Passed File Action Settings.vb rename to Notepad Ultra/Passed File Action Settings.vb diff --git a/Preset Directory Manager.Designer.vb b/Notepad Ultra/Preset Directory Manager.Designer.vb similarity index 100% rename from Preset Directory Manager.Designer.vb rename to Notepad Ultra/Preset Directory Manager.Designer.vb diff --git a/Preset Directory Manager.resx b/Notepad Ultra/Preset Directory Manager.resx similarity index 100% rename from Preset Directory Manager.resx rename to Notepad Ultra/Preset Directory Manager.resx diff --git a/Preset Directory Manager.vb b/Notepad Ultra/Preset Directory Manager.vb similarity index 100% rename from Preset Directory Manager.vb rename to Notepad Ultra/Preset Directory Manager.vb diff --git a/Resources/FileIcon.ico b/Notepad Ultra/Resources/FileIcon.ico similarity index 100% rename from Resources/FileIcon.ico rename to Notepad Ultra/Resources/FileIcon.ico diff --git a/Settings.Designer.vb b/Notepad Ultra/Settings.Designer.vb similarity index 100% rename from Settings.Designer.vb rename to Notepad Ultra/Settings.Designer.vb diff --git a/Settings.resx b/Notepad Ultra/Settings.resx similarity index 100% rename from Settings.resx rename to Notepad Ultra/Settings.resx diff --git a/Settings.vb b/Notepad Ultra/Settings.vb similarity index 100% rename from Settings.vb rename to Notepad Ultra/Settings.vb diff --git a/Settings1.vb b/Notepad Ultra/Settings1.vb similarity index 100% rename from Settings1.vb rename to Notepad Ultra/Settings1.vb diff --git a/Splash Screen.Designer.vb b/Notepad Ultra/Splash Screen.Designer.vb similarity index 100% rename from Splash Screen.Designer.vb rename to Notepad Ultra/Splash Screen.Designer.vb diff --git a/Splash Screen.resx b/Notepad Ultra/Splash Screen.resx similarity index 100% rename from Splash Screen.resx rename to Notepad Ultra/Splash Screen.resx diff --git a/Splash Screen.vb b/Notepad Ultra/Splash Screen.vb similarity index 100% rename from Splash Screen.vb rename to Notepad Ultra/Splash Screen.vb diff --git a/Status Bar Options.Designer.vb b/Notepad Ultra/Status Bar Options.Designer.vb similarity index 100% rename from Status Bar Options.Designer.vb rename to Notepad Ultra/Status Bar Options.Designer.vb diff --git a/Status Bar Options.resx b/Notepad Ultra/Status Bar Options.resx similarity index 100% rename from Status Bar Options.resx rename to Notepad Ultra/Status Bar Options.resx diff --git a/Status Bar Options.vb b/Notepad Ultra/Status Bar Options.vb similarity index 100% rename from Status Bar Options.vb rename to Notepad Ultra/Status Bar Options.vb diff --git a/Supported File Extensions.Designer.vb b/Notepad Ultra/Supported File Extensions.Designer.vb similarity index 100% rename from Supported File Extensions.Designer.vb rename to Notepad Ultra/Supported File Extensions.Designer.vb diff --git a/Supported File Extensions.resx b/Notepad Ultra/Supported File Extensions.resx similarity index 100% rename from Supported File Extensions.resx rename to Notepad Ultra/Supported File Extensions.resx diff --git a/Supported File Extensions.vb b/Notepad Ultra/Supported File Extensions.vb similarity index 100% rename from Supported File Extensions.vb rename to Notepad Ultra/Supported File Extensions.vb diff --git a/Theme Editor.Designer.vb b/Notepad Ultra/Theme Editor.Designer.vb similarity index 100% rename from Theme Editor.Designer.vb rename to Notepad Ultra/Theme Editor.Designer.vb diff --git a/Theme Editor.resx b/Notepad Ultra/Theme Editor.resx similarity index 100% rename from Theme Editor.resx rename to Notepad Ultra/Theme Editor.resx diff --git a/Theme Editor.vb b/Notepad Ultra/Theme Editor.vb similarity index 100% rename from Theme Editor.vb rename to Notepad Ultra/Theme Editor.vb diff --git a/bin/Debug/Build Installer.lnk b/Notepad Ultra/bin/Debug/Build Installer.lnk similarity index 100% rename from bin/Debug/Build Installer.lnk rename to Notepad Ultra/bin/Debug/Build Installer.lnk diff --git a/bin/Debug/Changelog.txt b/Notepad Ultra/bin/Debug/Changelog.txt similarity index 100% rename from bin/Debug/Changelog.txt rename to Notepad Ultra/bin/Debug/Changelog.txt diff --git a/bin/Debug/INSTALL DIR/RichTextBoxPrintCtrl.dll b/Notepad Ultra/bin/Debug/INSTALL DIR/RichTextBoxPrintCtrl.dll similarity index 100% rename from bin/Debug/INSTALL DIR/RichTextBoxPrintCtrl.dll rename to Notepad Ultra/bin/Debug/INSTALL DIR/RichTextBoxPrintCtrl.dll diff --git a/bin/Debug/INSTALL DIR/dependencies/RichTextBoxPrintCtrl.dll b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/RichTextBoxPrintCtrl.dll similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/RichTextBoxPrintCtrl.dll rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/RichTextBoxPrintCtrl.dll diff --git a/bin/Debug/INSTALL DIR/dependencies/file/bin/file.exe b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/file.exe similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/bin/file.exe rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/file.exe diff --git a/bin/Debug/INSTALL DIR/dependencies/file/bin/magic1.dll b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/magic1.dll similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/bin/magic1.dll rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/magic1.dll diff --git a/bin/Debug/INSTALL DIR/dependencies/file/bin/pong.txt b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/pong.txt similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/bin/pong.txt rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/pong.txt diff --git a/bin/Debug/INSTALL DIR/dependencies/file/bin/regex2.dll b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/regex2.dll similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/bin/regex2.dll rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/regex2.dll diff --git a/bin/Debug/INSTALL DIR/dependencies/file/bin/zlib1.dll b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/zlib1.dll similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/bin/zlib1.dll rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/bin/zlib1.dll diff --git a/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic diff --git a/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic.mgc b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic.mgc similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic.mgc rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/file/share/misc/magic.mgc diff --git a/bin/Debug/INSTALL DIR/dependencies/icon/npu alpha logo.ico b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/icon/npu alpha logo.ico similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/icon/npu alpha logo.ico rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/icon/npu alpha logo.ico diff --git a/bin/Debug/INSTALL DIR/dependencies/icon/npu beta logo.ico b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/icon/npu beta logo.ico similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/icon/npu beta logo.ico rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/icon/npu beta logo.ico diff --git a/bin/Debug/INSTALL DIR/dependencies/img/imageres_5348-02.png b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/imageres_5348-02.png similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/img/imageres_5348-02.png rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/imageres_5348-02.png diff --git a/bin/Debug/INSTALL DIR/dependencies/img/shell32_134-02.png b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/shell32_134-02.png similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/img/shell32_134-02.png rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/shell32_134-02.png diff --git a/bin/Debug/INSTALL DIR/dependencies/img/shell32_148-02.png b/Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/shell32_148-02.png similarity index 100% rename from bin/Debug/INSTALL DIR/dependencies/img/shell32_148-02.png rename to Notepad Ultra/bin/Debug/INSTALL DIR/dependencies/img/shell32_148-02.png diff --git a/bin/Debug/Notepad Ultra.application b/Notepad Ultra/bin/Debug/Notepad Ultra.application similarity index 100% rename from bin/Debug/Notepad Ultra.application rename to Notepad Ultra/bin/Debug/Notepad Ultra.application diff --git a/bin/Debug/Notepad Ultra.exe b/Notepad Ultra/bin/Debug/Notepad Ultra.exe similarity index 100% rename from bin/Debug/Notepad Ultra.exe rename to Notepad Ultra/bin/Debug/Notepad Ultra.exe diff --git a/bin/Debug/Notepad Ultra.exe.CodeAnalysisLog.xml b/Notepad Ultra/bin/Debug/Notepad Ultra.exe.CodeAnalysisLog.xml similarity index 100% rename from bin/Debug/Notepad Ultra.exe.CodeAnalysisLog.xml rename to Notepad Ultra/bin/Debug/Notepad Ultra.exe.CodeAnalysisLog.xml diff --git a/bin/Debug/Notepad Ultra.exe.config b/Notepad Ultra/bin/Debug/Notepad Ultra.exe.config similarity index 100% rename from bin/Debug/Notepad Ultra.exe.config rename to Notepad Ultra/bin/Debug/Notepad Ultra.exe.config diff --git a/bin/Debug/Notepad Ultra.exe.manifest b/Notepad Ultra/bin/Debug/Notepad Ultra.exe.manifest similarity index 100% rename from bin/Debug/Notepad Ultra.exe.manifest rename to Notepad Ultra/bin/Debug/Notepad Ultra.exe.manifest diff --git a/bin/Debug/Notepad Ultra.pdb b/Notepad Ultra/bin/Debug/Notepad Ultra.pdb similarity index 100% rename from bin/Debug/Notepad Ultra.pdb rename to Notepad Ultra/bin/Debug/Notepad Ultra.pdb diff --git a/bin/Debug/Notepad Ultra.vshost.application b/Notepad Ultra/bin/Debug/Notepad Ultra.vshost.application similarity index 100% rename from bin/Debug/Notepad Ultra.vshost.application rename to Notepad Ultra/bin/Debug/Notepad Ultra.vshost.application diff --git a/bin/Debug/Notepad Ultra.vshost.exe b/Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe similarity index 100% rename from bin/Debug/Notepad Ultra.vshost.exe rename to Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe diff --git a/bin/Debug/Notepad Ultra.vshost.exe.config b/Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe.config similarity index 100% rename from bin/Debug/Notepad Ultra.vshost.exe.config rename to Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe.config diff --git a/bin/Debug/Notepad Ultra.vshost.exe.manifest b/Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe.manifest similarity index 100% rename from bin/Debug/Notepad Ultra.vshost.exe.manifest rename to Notepad Ultra/bin/Debug/Notepad Ultra.vshost.exe.manifest diff --git a/bin/Debug/Notepad Ultra.xml b/Notepad Ultra/bin/Debug/Notepad Ultra.xml similarity index 100% rename from bin/Debug/Notepad Ultra.xml rename to Notepad Ultra/bin/Debug/Notepad Ultra.xml diff --git a/bin/Debug/PostSharp.dll b/Notepad Ultra/bin/Debug/PostSharp.dll similarity index 100% rename from bin/Debug/PostSharp.dll rename to Notepad Ultra/bin/Debug/PostSharp.dll diff --git a/bin/Debug/PostSharp.xml b/Notepad Ultra/bin/Debug/PostSharp.xml similarity index 100% rename from bin/Debug/PostSharp.xml rename to Notepad Ultra/bin/Debug/PostSharp.xml diff --git a/bin/Debug/RichTextBoxPrintCtrl.dll b/Notepad Ultra/bin/Debug/RichTextBoxPrintCtrl.dll similarity index 100% rename from bin/Debug/RichTextBoxPrintCtrl.dll rename to Notepad Ultra/bin/Debug/RichTextBoxPrintCtrl.dll diff --git a/bin/Debug/Text files - Shortcut.lnk b/Notepad Ultra/bin/Debug/Text files - Shortcut.lnk similarity index 100% rename from bin/Debug/Text files - Shortcut.lnk rename to Notepad Ultra/bin/Debug/Text files - Shortcut.lnk diff --git a/bin/Debug/app.publish/Notepad Ultra.exe b/Notepad Ultra/bin/Debug/app.publish/Notepad Ultra.exe similarity index 100% rename from bin/Debug/app.publish/Notepad Ultra.exe rename to Notepad Ultra/bin/Debug/app.publish/Notepad Ultra.exe diff --git a/bin/Debug/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll b/Notepad Ultra/bin/Debug/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll similarity index 100% rename from bin/Debug/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll rename to Notepad Ultra/bin/Debug/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll diff --git a/bin/Debug/bin/Debug/dependencies/file/bin/file.exe b/Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/file.exe similarity index 100% rename from bin/Debug/bin/Debug/dependencies/file/bin/file.exe rename to Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/file.exe diff --git a/bin/Debug/bin/Debug/dependencies/file/bin/magic1.dll b/Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/magic1.dll similarity index 100% rename from bin/Debug/bin/Debug/dependencies/file/bin/magic1.dll rename to Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/magic1.dll diff --git a/bin/Debug/bin/Debug/dependencies/file/bin/regex2.dll b/Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/regex2.dll similarity index 100% rename from bin/Debug/bin/Debug/dependencies/file/bin/regex2.dll rename to Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/regex2.dll diff --git a/bin/Debug/bin/Debug/dependencies/file/bin/zlib1.dll b/Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/zlib1.dll similarity index 100% rename from bin/Debug/bin/Debug/dependencies/file/bin/zlib1.dll rename to Notepad Ultra/bin/Debug/bin/Debug/dependencies/file/bin/zlib1.dll diff --git a/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll b/Notepad Ultra/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll similarity index 100% rename from bin/Debug/dependencies/RichTextBoxPrintCtrl.dll rename to Notepad Ultra/bin/Debug/dependencies/RichTextBoxPrintCtrl.dll diff --git a/bin/Debug/dependencies/dimg/imageres_112.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/imageres_112.ico similarity index 100% rename from bin/Debug/dependencies/dimg/imageres_112.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/imageres_112.ico diff --git a/bin/Debug/dependencies/dimg/imageres_179.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/imageres_179.ico similarity index 100% rename from bin/Debug/dependencies/dimg/imageres_179.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/imageres_179.ico diff --git a/bin/Debug/dependencies/dimg/imageres_18.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/imageres_18.ico similarity index 100% rename from bin/Debug/dependencies/dimg/imageres_18.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/imageres_18.ico diff --git a/bin/Debug/dependencies/dimg/imageres_5304.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/imageres_5304.ico similarity index 100% rename from bin/Debug/dependencies/dimg/imageres_5304.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/imageres_5304.ico diff --git a/bin/Debug/dependencies/dimg/imageres_84.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/imageres_84.ico similarity index 100% rename from bin/Debug/dependencies/dimg/imageres_84.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/imageres_84.ico diff --git a/bin/Debug/dependencies/dimg/shell32_16710.ico b/Notepad Ultra/bin/Debug/dependencies/dimg/shell32_16710.ico similarity index 100% rename from bin/Debug/dependencies/dimg/shell32_16710.ico rename to Notepad Ultra/bin/Debug/dependencies/dimg/shell32_16710.ico diff --git a/bin/Debug/dependencies/file/bin/file.exe b/Notepad Ultra/bin/Debug/dependencies/file/bin/file.exe similarity index 100% rename from bin/Debug/dependencies/file/bin/file.exe rename to Notepad Ultra/bin/Debug/dependencies/file/bin/file.exe diff --git a/bin/Debug/dependencies/file/bin/magic1.dll b/Notepad Ultra/bin/Debug/dependencies/file/bin/magic1.dll similarity index 100% rename from bin/Debug/dependencies/file/bin/magic1.dll rename to Notepad Ultra/bin/Debug/dependencies/file/bin/magic1.dll diff --git a/bin/Debug/dependencies/file/bin/regex2.dll b/Notepad Ultra/bin/Debug/dependencies/file/bin/regex2.dll similarity index 100% rename from bin/Debug/dependencies/file/bin/regex2.dll rename to Notepad Ultra/bin/Debug/dependencies/file/bin/regex2.dll diff --git a/bin/Debug/dependencies/file/bin/zlib1.dll b/Notepad Ultra/bin/Debug/dependencies/file/bin/zlib1.dll similarity index 100% rename from bin/Debug/dependencies/file/bin/zlib1.dll rename to Notepad Ultra/bin/Debug/dependencies/file/bin/zlib1.dll diff --git a/bin/Debug/dependencies/file/share/misc/magic b/Notepad Ultra/bin/Debug/dependencies/file/share/misc/magic similarity index 100% rename from bin/Debug/dependencies/file/share/misc/magic rename to Notepad Ultra/bin/Debug/dependencies/file/share/misc/magic diff --git a/bin/Debug/dependencies/file/share/misc/magic.mgc b/Notepad Ultra/bin/Debug/dependencies/file/share/misc/magic.mgc similarity index 100% rename from bin/Debug/dependencies/file/share/misc/magic.mgc rename to Notepad Ultra/bin/Debug/dependencies/file/share/misc/magic.mgc diff --git a/bin/Debug/dependencies/fileicon/res/pdn/npufile64.pdn b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/pdn/npufile64.pdn similarity index 100% rename from bin/Debug/dependencies/fileicon/res/pdn/npufile64.pdn rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/pdn/npufile64.pdn diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile16.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile16.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile16.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile16.png diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile20.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile20.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile20.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile20.png diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile24.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile24.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile24.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile24.png diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile32.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile32.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile32.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile32.png diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile64.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile64.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile64.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile64.png diff --git a/bin/Debug/dependencies/fileicon/res/png/npufile64stripeless.png b/Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile64stripeless.png similarity index 100% rename from bin/Debug/dependencies/fileicon/res/png/npufile64stripeless.png rename to Notepad Ultra/bin/Debug/dependencies/fileicon/res/png/npufile64stripeless.png diff --git a/bin/Debug/dependencies/icon/npu alpha logo.ico b/Notepad Ultra/bin/Debug/dependencies/icon/npu alpha logo.ico similarity index 100% rename from bin/Debug/dependencies/icon/npu alpha logo.ico rename to Notepad Ultra/bin/Debug/dependencies/icon/npu alpha logo.ico diff --git a/bin/Debug/dependencies/icon/npu beta logo.ico b/Notepad Ultra/bin/Debug/dependencies/icon/npu beta logo.ico similarity index 100% rename from bin/Debug/dependencies/icon/npu beta logo.ico rename to Notepad Ultra/bin/Debug/dependencies/icon/npu beta logo.ico diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 128x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 128x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 128x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 128x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 16x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 16x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 16x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 16x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 20x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 20x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 20x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 20x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 24x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 24x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 24x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 24x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 256x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 256x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 256x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 256x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 32x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 32x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 32x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 32x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 64x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 64x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 64x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/alpha/npu alpha logo 64x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 128x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 128x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 128x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 128x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 16x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 16x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 16x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 16x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 20x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 20x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 20x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 20x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 24x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 24x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 24x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 24x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 32x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 32x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 32x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 32x.pdn diff --git a/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 64x.pdn b/Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 64x.pdn similarity index 100% rename from bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 64x.pdn rename to Notepad Ultra/bin/Debug/dependencies/icon/res/pdn/beta/npu beta logo 64x.pdn diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 128x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 128x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 128x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 128x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 16x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 16x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 16x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 16x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 20x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 20x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 20x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 20x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 24x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 24x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 24x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 24x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 256x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 256x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 256x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 256x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 32x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 32x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 32x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 32x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 64x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 64x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 64x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/npu alpha logo 64x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 16x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 16x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 16x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 16x.png diff --git a/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 24x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 24x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 24x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/alpha/upscaled/npu alpha logo 24x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 128x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 128x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 128x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 128x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 16x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 16x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 16x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 16x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 20x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 20x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 20x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 20x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 24x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 24x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 24x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 24x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 256x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 256x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 256x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 256x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 32x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 32x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 32x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 32x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 64x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 64x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/npu beta logo 64x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/npu beta logo 64x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 16x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 16x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 16x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 16x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 20x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 20x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 20x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 20x.png diff --git a/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 24x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 24x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 24x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/beta/upscaled/npu beta logo 24x.png diff --git a/bin/Debug/dependencies/icon/res/png/npu alpha logo 128x.png b/Notepad Ultra/bin/Debug/dependencies/icon/res/png/npu alpha logo 128x.png similarity index 100% rename from bin/Debug/dependencies/icon/res/png/npu alpha logo 128x.png rename to Notepad Ultra/bin/Debug/dependencies/icon/res/png/npu alpha logo 128x.png diff --git a/bin/Debug/dependencies/img/imageres_5348-02.png b/Notepad Ultra/bin/Debug/dependencies/img/imageres_5348-02.png similarity index 100% rename from bin/Debug/dependencies/img/imageres_5348-02.png rename to Notepad Ultra/bin/Debug/dependencies/img/imageres_5348-02.png diff --git a/bin/Debug/dependencies/img/shell32_134-02.png b/Notepad Ultra/bin/Debug/dependencies/img/shell32_134-02.png similarity index 100% rename from bin/Debug/dependencies/img/shell32_134-02.png rename to Notepad Ultra/bin/Debug/dependencies/img/shell32_134-02.png diff --git a/bin/Debug/dependencies/img/shell32_148-02.png b/Notepad Ultra/bin/Debug/dependencies/img/shell32_148-02.png similarity index 100% rename from bin/Debug/dependencies/img/shell32_148-02.png rename to Notepad Ultra/bin/Debug/dependencies/img/shell32_148-02.png diff --git a/bin/Debug/file/bin/file.exe b/Notepad Ultra/bin/Debug/file/bin/file.exe similarity index 100% rename from bin/Debug/file/bin/file.exe rename to Notepad Ultra/bin/Debug/file/bin/file.exe diff --git a/bin/Debug/file/bin/magic1.dll b/Notepad Ultra/bin/Debug/file/bin/magic1.dll similarity index 100% rename from bin/Debug/file/bin/magic1.dll rename to Notepad Ultra/bin/Debug/file/bin/magic1.dll diff --git a/bin/Debug/file/bin/pong.txt b/Notepad Ultra/bin/Debug/file/bin/pong.txt similarity index 100% rename from bin/Debug/file/bin/pong.txt rename to Notepad Ultra/bin/Debug/file/bin/pong.txt diff --git a/bin/Debug/file/bin/regex2.dll b/Notepad Ultra/bin/Debug/file/bin/regex2.dll similarity index 100% rename from bin/Debug/file/bin/regex2.dll rename to Notepad Ultra/bin/Debug/file/bin/regex2.dll diff --git a/bin/Debug/file/bin/zlib1.dll b/Notepad Ultra/bin/Debug/file/bin/zlib1.dll similarity index 100% rename from bin/Debug/file/bin/zlib1.dll rename to Notepad Ultra/bin/Debug/file/bin/zlib1.dll diff --git a/bin/Debug/file/share/misc/magic b/Notepad Ultra/bin/Debug/file/share/misc/magic similarity index 100% rename from bin/Debug/file/share/misc/magic rename to Notepad Ultra/bin/Debug/file/share/misc/magic diff --git a/bin/Debug/file/share/misc/magic.mgc b/Notepad Ultra/bin/Debug/file/share/misc/magic.mgc similarity index 100% rename from bin/Debug/file/share/misc/magic.mgc rename to Notepad Ultra/bin/Debug/file/share/misc/magic.mgc diff --git a/bin/Debug/m.vshost.exe.config b/Notepad Ultra/bin/Debug/m.vshost.exe.config similarity index 100% rename from bin/Debug/m.vshost.exe.config rename to Notepad Ultra/bin/Debug/m.vshost.exe.config diff --git a/bin/Debug/unix2dos.exe b/Notepad Ultra/bin/Debug/unix2dos.exe similarity index 100% rename from bin/Debug/unix2dos.exe rename to Notepad Ultra/bin/Debug/unix2dos.exe diff --git a/npu alpha logo.ico b/Notepad Ultra/npu alpha logo.ico similarity index 100% rename from npu alpha logo.ico rename to Notepad Ultra/npu alpha logo.ico diff --git a/npu beta logo.ico b/Notepad Ultra/npu beta logo.ico similarity index 100% rename from npu beta logo.ico rename to Notepad Ultra/npu beta logo.ico diff --git a/obj/Debug/Before-PostSharp/Notepad Ultra.exe b/Notepad Ultra/obj/Debug/Before-PostSharp/Notepad Ultra.exe similarity index 100% rename from obj/Debug/Before-PostSharp/Notepad Ultra.exe rename to Notepad Ultra/obj/Debug/Before-PostSharp/Notepad Ultra.exe diff --git a/obj/Debug/Before-PostSharp/Notepad Ultra.pdb b/Notepad Ultra/obj/Debug/Before-PostSharp/Notepad Ultra.pdb similarity index 100% rename from obj/Debug/Before-PostSharp/Notepad Ultra.pdb rename to Notepad Ultra/obj/Debug/Before-PostSharp/Notepad Ultra.pdb diff --git a/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Notepad Ultra/obj/Debug/DesignTimeResolveAssemblyReferences.cache similarity index 100% rename from obj/Debug/DesignTimeResolveAssemblyReferences.cache rename to Notepad Ultra/obj/Debug/DesignTimeResolveAssemblyReferences.cache diff --git a/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Notepad Ultra/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache similarity index 100% rename from obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache rename to Notepad Ultra/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache diff --git a/obj/Debug/Notepad Ultra.application b/Notepad Ultra/obj/Debug/Notepad Ultra.application similarity index 100% rename from obj/Debug/Notepad Ultra.application rename to Notepad Ultra/obj/Debug/Notepad Ultra.application diff --git a/obj/Debug/Notepad Ultra.exe b/Notepad Ultra/obj/Debug/Notepad Ultra.exe similarity index 100% rename from obj/Debug/Notepad Ultra.exe rename to Notepad Ultra/obj/Debug/Notepad Ultra.exe diff --git a/obj/Debug/Notepad Ultra.exe.manifest b/Notepad Ultra/obj/Debug/Notepad Ultra.exe.manifest similarity index 100% rename from obj/Debug/Notepad Ultra.exe.manifest rename to Notepad Ultra/obj/Debug/Notepad Ultra.exe.manifest diff --git a/obj/Debug/Notepad Ultra.pdb b/Notepad Ultra/obj/Debug/Notepad Ultra.pdb similarity index 100% rename from obj/Debug/Notepad Ultra.pdb rename to Notepad Ultra/obj/Debug/Notepad Ultra.pdb diff --git a/obj/Debug/Notepad Ultra.vbproj.FileListAbsolute.txt b/Notepad Ultra/obj/Debug/Notepad Ultra.vbproj.FileListAbsolute.txt similarity index 100% rename from obj/Debug/Notepad Ultra.vbproj.FileListAbsolute.txt rename to Notepad Ultra/obj/Debug/Notepad Ultra.vbproj.FileListAbsolute.txt diff --git a/obj/Debug/Notepad Ultra.vbproj.GenerateResource.Cache b/Notepad Ultra/obj/Debug/Notepad Ultra.vbproj.GenerateResource.Cache similarity index 100% rename from obj/Debug/Notepad Ultra.vbproj.GenerateResource.Cache rename to Notepad Ultra/obj/Debug/Notepad Ultra.vbproj.GenerateResource.Cache diff --git a/obj/Debug/Notepad Ultra.vbprojResolveAssemblyReference.cache b/Notepad Ultra/obj/Debug/Notepad Ultra.vbprojResolveAssemblyReference.cache similarity index 100% rename from obj/Debug/Notepad Ultra.vbprojResolveAssemblyReference.cache rename to Notepad Ultra/obj/Debug/Notepad Ultra.vbprojResolveAssemblyReference.cache diff --git a/obj/Debug/Notepad Ultra.xml b/Notepad Ultra/obj/Debug/Notepad Ultra.xml similarity index 100% rename from obj/Debug/Notepad Ultra.xml rename to Notepad Ultra/obj/Debug/Notepad Ultra.xml diff --git a/obj/Debug/Notepad_Ultra.About.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.About.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.About.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.About.resources diff --git a/obj/Debug/Notepad_Ultra.ChangelogViewer.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.ChangelogViewer.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.ChangelogViewer.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.ChangelogViewer.resources diff --git a/obj/Debug/Notepad_Ultra.Customise_Colours.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Customise_Colours.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Customise_Colours.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Customise_Colours.resources diff --git a/obj/Debug/Notepad_Ultra.Find.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Find.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Find.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Find.resources diff --git a/obj/Debug/Notepad_Ultra.FindReplace.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.FindReplace.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.FindReplace.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.FindReplace.resources diff --git a/obj/Debug/Notepad_Ultra.Form1.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Form1.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Form1.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Form1.resources diff --git a/obj/Debug/Notepad_Ultra.LoadTimeWarning.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.LoadTimeWarning.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.LoadTimeWarning.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.LoadTimeWarning.resources diff --git a/obj/Debug/Notepad_Ultra.NPUWindow.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.NPUWindow.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.NPUWindow.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.NPUWindow.resources diff --git a/obj/Debug/Notepad_Ultra.Open_Passed_File.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Open_Passed_File.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Open_Passed_File.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Open_Passed_File.resources diff --git a/obj/Debug/Notepad_Ultra.Passed_File_Action_Settings.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Passed_File_Action_Settings.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Passed_File_Action_Settings.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Passed_File_Action_Settings.resources diff --git a/obj/Debug/Notepad_Ultra.Preset_Directory_Manager.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Preset_Directory_Manager.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Preset_Directory_Manager.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Preset_Directory_Manager.resources diff --git a/obj/Debug/Notepad_Ultra.Resources.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Resources.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Resources.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Resources.resources diff --git a/obj/Debug/Notepad_Ultra.Settings.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Settings.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Settings.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Settings.resources diff --git a/obj/Debug/Notepad_Ultra.Splash_Screen.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Splash_Screen.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Splash_Screen.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Splash_Screen.resources diff --git a/obj/Debug/Notepad_Ultra.Status_Bar_Options.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Status_Bar_Options.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Status_Bar_Options.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Status_Bar_Options.resources diff --git a/obj/Debug/Notepad_Ultra.Supported_File_Extensions.resources b/Notepad Ultra/obj/Debug/Notepad_Ultra.Supported_File_Extensions.resources similarity index 100% rename from obj/Debug/Notepad_Ultra.Supported_File_Extensions.resources rename to Notepad Ultra/obj/Debug/Notepad_Ultra.Supported_File_Extensions.resources diff --git a/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll b/Notepad Ultra/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll similarity index 100% rename from obj/Debug/TempPE/My Project.Resources.Designer.vb.dll rename to Notepad Ultra/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll diff --git a/packages.config b/Notepad Ultra/packages.config similarity index 100% rename from packages.config rename to Notepad Ultra/packages.config diff --git a/packages/PostSharp.4.3.25/PostSharp.4.3.25.nupkg b/packages/PostSharp.4.3.25/PostSharp.4.3.25.nupkg new file mode 100644 index 0000000..3dcdd2b Binary files /dev/null and b/packages/PostSharp.4.3.25/PostSharp.4.3.25.nupkg differ diff --git a/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.dll b/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.dll new file mode 100644 index 0000000..306521d Binary files /dev/null and b/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.dll differ diff --git a/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.xml b/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.xml new file mode 100644 index 0000000..a412d76 --- /dev/null +++ b/packages/PostSharp.4.3.25/lib/net35-client/PostSharp.xml @@ -0,0 +1,11741 @@ + + + + PostSharp + + + + + Instructs PostSharp to ignore warnings and information messages. Errors cannot be ignored. + + + + + Creates a new instance of . + + Identifier of the ignored warning. + + + + Gets the identifier of the ignored warning. + + + + + Gets or set the reason (a human-readable text) why the warning must be ignored. + + + + + Represents the location of a message, which means, for the end-user, a line in a file of source code. + From the aspect developer, the location can be known as an object representing an element of code + (for instance a or ). Such implicit locations are resolved + by PostSharp to a file and line number. + + + + + Element of code (reflection object or Declaration) from which the location must be resolved. + + + + + Gets the ending column in the file that caused the + message. + + + + + Gets the ending line in the file that caused the message. + + + + + Builds a explicitly by specifying a filename, when the + + File name. + A . + + + + Builds a explicitly by specifying a filename, line, and column. + + File name. + Line number. + Column number. + A . + + + + Builds a explicitly by specifying a filename, line, and column. + + File name. + Starting line number. + Starting column number. + Ending line number. + Ending column number. + A . + + + + Gets the name of the file that caused the message. + + + + + Builds a from a . + + A . + A . + + + + Builds a from a . + + A . + A corresponding to . + + + + Builds a from an . + + An . + A . + + + + Builds a from an object representing an + element of code (, , , + , , , , , + or, if + you are using PostSharp SDK, any Declaration). + + an object representing an + element of code (, , , + , , , , + , or, if you are using PostSharp SDK, any Declaration. + A representing . + + + + Builds a from an . + + An ( or its wrapper). + A . + + + + Builds a from a (, + , , , + , ). + + An element of code (, + , , , + , ). + A . + + + + Builds a from a . + + A . + A . + + + + Gets the starting column in the file that caused the message. + + + + + Gets the starting line in the file that caused the message. + + + + + Represents an unknown or indeterminate location of the error message. + + + + + Provides some methods that are transformed during post-compilation. + + + + + At post-compile time, casts an instance of a type into another. + A post-compile time error is reported if the source type cannot be + assigned to the target type. + + Instance to be casted. + Source type. + Target type. + The object casted as . + + + + When used to retrieve the value of a field, forces the compiler to retrieve a copy + of the field value instead of an address to this field. This allows to call + instance methods of value-type fields without loading the field address. + + Value. + Type of the value to retrieve (this type parameter can generally be omitted). + + , exactly. + + + + Determines whether the calling program has been transformed by PostSharp. + + + + + Base class for arguments of all advices. + + + + + Initializes a new . + + The instance related to the advice invocation, or + null if the advice is associated to a static element of code. + + + + Gets the of the declaration to which the + advice has been applied. + + + + + Gets or sets the object instance on which the method is being executed. + + + + + Encapsulation of method arguments. + + + + + Returns a shallow copy of the current object. + + A shallow copy of the current object. + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + + + + Gets the number of arguments encapsulated by the current object. + + + + + Creates a weakly-typed object representing any number of arguments. + + + + + + returns + M:PostSharp.Aspects.Arguments.Create(System.Object[]) + + + + + + + Creates a strongly-typed object representing 1 argument. + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``1(``0) + + + + + + + Creates a strongly-typed object representing 2 arguments. + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``2(``0,``1) + + + + + + + Creates a strongly-typed object representing 3 arguments. + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``3(``0,``1,``2) + + + + + + + Creates a strongly-typed object representing 4 arguments. + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``4(``0,``1,``2,``3) + + + + + + + Creates a strongly-typed object representing 5 arguments. + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``5(``0,``1,``2,``3,``4) + + + + + + + Creates a strongly-typed object representing 6 arguments. + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``6(``0,``1,``2,``3,``4,``5) + + + + + + + Creates a strongly-typed object representing 7 arguments. + + + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``7(``0,``1,``2,``3,``4,``5,``6) + + + + + + + Creates a strongly-typed object representing 8 arguments. + + + + + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``8(``0,``1,``2,``3,``4,``5,``6,``7) + + + + + + + Empty list of . + + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + + Gets or sets the value of an argument. + + Argument index. + The argument value. + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Converts the current argument list into an . + + An whose elements are equal to the values encapsulated by the current . + + + + Base class for all aspects that are declared using multicast custom attributes (). + + + + + + + PostSharp.Aspects.Aspect + + + + + + + Gets or sets the weaving priority of the aspect. + + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked at build tome to get the imperative configuration of the current . + + Code element (, , + , , , , + , or ) to which the current + has been applied. + + An representing the imperative configuration + of the current . + + + + Gets or sets the of the serializer (a type derived + from ) used to serialize the aspect instance + at build time and deserialize it at runtime. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Custom attribute that, when applied to an aspect class, specifies a human-readable description of the aspect + that can be displayed in PostSharp Tools for Visual Studio. + + + + + Initializes a new instance of the class. + + A human-readable description of the aspect class to which + the custom attribute is applied. + + + + Gets a human-readable description of the aspect class to which + the custom attribute is applied. + + + + + Reserved for future usage. + + + + + + + PostSharp.Aspects.AspectInfo + + + + + + + Completely specifies an aspect instance, including its target code element. An + contains either the aspect instance itself ( property), either information allowing to construct the aspect + () and configure the weaver (). + + + + + Initializes a new from a runtime aspect instance (). + + Code element (, , + , , , , + , or ) to which the current + is applied. + The aspect runtime instance. + + + + Initializes a new from a runtime aspect instance () + and its . + + Code element (, , + , , , , + , or ) to which the current + is applied. + The aspect runtime instance. + The aspect configuration (the type of this parameter should be equal to the + type configuration objects expected by the concrete ). + + + + Initializes a new from + + Code element (, , + , , , , + , or ) to which the current + is applied. + An instructing how the aspect instance + should be constructed. + An optional configuration object whose type corresponds to + the aspect type. + + + + Determines whether the should be represented as a stand-alone instance + in PostSharp Tools for Visual Studio. If false, the current + will be not be represented as a standalone node, and its advices will be merged with the ones provided + by the parent aspect (implementing ). The default value is false. + + + + + Gets the code element (, , + , , , , + , or ) to which the current + is applied. + + + + + Completely specifies an aspect instance (but not its target). An either the aspect instance itself + ( property), either information allowing to construct the aspect () and configure the weaver (). + + + + + Initializes a new when one cannot provide an aspect instance, + i.e. from an and a . + + Aspect construction. + Aspect configuration. + + + + Gets the aspect instance. + + + + + Gets the assembly-qualified type name of the aspect. + + + + + Gets the aspect configuration. + + + + + Gets the aspect construction. + + + + + Gets the type name of the aspect. + + + + + Utility methods for PostSharp.Aspects. + + + + + + + PostSharp.Aspects.AspectUtilities + + + + + + + Gets the of the calling instance. This method must be + invoked from an instance method (not a static method) of a type that has been enhanced + by an aspect. + + The of the calling instance. + + + + Initializes the all the aspects of the calling instance. This method must be + invoked from an instance method (not a static method) of a type that has been enhanced + by an aspect. + + + + + Base class for all aspects applied on assemblies. + + + + + + + PostSharp.Aspects.AssemblyLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Assembly to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Assembly on which the current aspect is applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Assembly to which the current aspect has been applied. + + + + Aspect that, when applied on a type, introduces one or many new interfaces + into that type. + + + + + + + PostSharp.Aspects.CompositionAspect + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces returned by + is already implemented by the type to which the current aspect is applied. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked at runtime, during the initialization of instances of the target type, + to create the composed object. + + + + + param + args + M:PostSharp.Aspects.CompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs) + + + + The composed object. This interface should implement the interfaces specified + by the method. + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface returned by the method. + + + + + Gets the array of interfaces that should be introduced publicly into + the target type of the current aspect. + + + to which the current aspect is applied. + The array of interfaces that should be introduced publicly into , or null if no interface should + be introduced publicly. + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces returned by the method + is already implemented by the type to which the current aspect is applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Type to which the current aspect has been applied. + + + + System type used in the implementation of the . Do not use in user code. + + + + + Creates a new instance of the type with a depth level that is one more than the current one. + + A new , incremented of one from the current . + + + + Determines whether the current depth is zero. + + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Gets a instance representing zero. + + + + + Aspect that, when applied to a target, adds a custom attribute to this target. + + + + + Initializes a new by specifying an . + + Construction of the custom attribute to be added to the target. + + + + Initializes a new by specifying a + . + + Construction of the custom attribute to be added to the target. + + + + Gets the construction of the custom attribute that must be applied to the target of this aspect. + + + + + Arguments of handlers of aspects of the type . + + + + + Adds a handler to the event by invoking the Add semantic of the next node in the chain of invocation. + + The handler to add to the event. + + + + Gets the delegate arguments. + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Gets the event to which the current aspect has been applied. + + + + + Gets the delegate being added, removed, or invoked. + + + + + Invokes a handler by calling the Invoke semantic of the next node in the chain of invocation. + + Handler to be invoked. + Arguments passed to the handler. + Return value of the handler. + + + + Proceeds with adding the to the event to which the current aspect. + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Proceeds with invoking the with the arguments specified in the property. + The delegate may change the and set the . + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Proceeds with removing the from the event to which the current aspect. + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Removes a handler from the event by invoking the Remove semantic of the next node in the chain of invocation. + + Handler to be removed. + + + + Gets the return value of the delegate. + + + + + Aspect that, when applied on an event, intercepts invocations of its semantics Add (), + Remove () and Invoke (). + + + + + + + PostSharp.Aspects.EventInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the Add semantic of the event to which the current aspect is applied, + i.e. when a new delegate is added to this event. + + Handler arguments. + + + + Method invoked when the event to which the current aspect is applied is fired, for each delegate + of this event, and instead of invoking this delegate. + + Handler arguments. + + + + Method invoked instead of the Remove semantic of the event to which the current aspect is applied, + i.e. when a delegate is removed from this event. + + Handler arguments. + + + + Base class for all aspects applied on events. + + + + + + + PostSharp.Aspects.EventLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Event to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Event to which the aspect has been applied + + true if the aspect was applied to an acceptable event, otherwise + false. + + + + Initializes the current aspect. + + Event to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Event to which the current aspect has been applied. + + + + Base class for all aspects applied on fields. + + + + + + + PostSharp.Aspects.FieldLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Field to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Field to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Method invoked at runtime before any other method of the aspect is invoked. + + Field on which this instance is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Field to which the current aspect has been applied. + + + + Enumerates the possible behaviors of the calling method after the calling method has returned. + + + + + Default flow behavior for the current method. For , and , the fault flow is + , for it is . + + + + + Continue normally. In an advice, the behavior does not rethrow + the exception, but continues the normal execution flow after the block protected by the advise. + If there is another aspect before the current aspect on the current method, + the behavior calls the + method of the other aspect. + + + + + The current exception will be rethrown. Available only for . + + + + + Return immediately from the current method. Available only for and + . Note that you may want to set the + property, otherwise you may get a . If there is another + aspect before the current aspect on the current method, + the behavior skips the + method of the other aspect. However, the method of the other aspect + will be invoked. + + + + + Throws the exception contained in the property. Available only for . + + + + + Yields a value or awaits for an awaiter. Available only for iterators and async methods with the + and advices. + + + + + Base interface for run-time semantics of all aspects. + + + + + Compile-time semantics of . + + + + + Method invoked at build time to get the imperative configuration of the current . + + Code element (, , + , , , , + , or ) to which the current aspect has been applied. + + An representing the imperative configuration + of the current . + + + + Represents an instance of an aspect applied to a declaration. + + + + + Gets the aspect instance. + + + + + Gets the aspect configuration. + + + + + Gets the aspect construction. + + + + + Gets the type of the aspect. + + + + + Interface that, when implemented by an aspect class, allows aspect instances + to provide other aspects to the weaver. + + + + + Provides new aspects. + + Code element (, , + , , , , + , or ) to which the current aspect has been applied. + + A set of aspect instances. + + + + Service that allows to determine which aspects have been applied to a given declaration, whether declaratively through custom attributes or , + or programmatically using . + + + + + Event invoked after all the aspects in the current project have been discovered and initialized. + + + + + Gets the list of aspect instances on a given declaration. + + The declaration (in the current assembly) for which the list of aspect instances is required. + The list of aspect instances applied on . + + + + Determines whether an aspect of a given type has been applied to a given declaration. + + The declaration on which the presence of the aspect must be checked. + The type of aspect. + + true if an aspect of type has been applied to , otherwise false. + + + + Runtime semantics of aspects applied at assembly level. + + + + + Build-time semantics of aspects applied at assembly level. + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Assembly to which the current aspect is applied + Reserved for future usage. + + + + Defines the semantics of aspects that require to be notified after + a target object is cloned using . + + + + + Method called after the an object enhanced by the current aspect has been + cloned using . The this + parameter refers to the new aspect instance in the cloned object. + + Aspect instance corresponding to the current + aspect instance in the cloned target object. + + + + Interface exposing the implementation of another interface introduced + by a . + + Interface whose implementation is expose. + + + + Gets the object implementing the interface + on behalf of the current instance. + + Credentials provided by the current instance. + The object implementing the interface + on behalf of the current instance. + + + + + Defines the semantics of an aspect that, when applied on a type, introduce one or many new interfaces + into that type, and let these interfaces be implemented by an object created + at runtime. + + + + + Method invoked at runtime, during the initialization of instances of the target type, + to create the composed object. + + + + + param + args + M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs) + + + + The composed object. This interface should implement the interfaces specified + by the and + collections. + + + + Semantics of an aspect that, when applied to a target, adds a custom attribute to this target. + + + + + Interface through which an event-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Invoke the Add semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be added to the event. + + + + Invoke the Invoke semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be removed from the event. + Arguments with which the should be invoked. + The value returned by the handler. + + + + Invoke the Remove semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be removed from the event. + + + + Runtime semantics of an aspect that, when applied on an event, intercepts invocations of its semantics Add (), + Remove () and Invoke () semantics. + + + + + Method invoked instead of the Add semantic of the event to which the current aspect is applied, + i.e. when a new delegate is added to this event. + + Handler arguments. + + + + Method invoked when the event to which the current aspect is applied is fired, for each delegate + of this event, and instead of invoking this delegate. + + Handler arguments. + + + + Method invoked instead of the Remove semantic of the event to which the current aspect is applied, + i.e. when a delegate is removed from this event. + + Handler arguments. + + + + Runtime semantics of aspects that can be applied on events. + + + + + Initializes the current aspect. + + Event to which the current aspect is applied. + + + + Build-time semantics of aspects that can be applied on events. + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Event to which the current aspect is applied + Reserved for future usage. + + + + Run-time semantics of aspects applied to fields. + + + + + Method invoked at runtime before any other method of the aspect is invoked. + + Field on which this instance is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Field to which the current aspect is applied + Reserved for future usage. + + + + Runtime semantics of aspects that have the same lifetime as instance of types + to which their are applied (or instance of the declaring type of members to which they are applied). + + + + + Creates a new instance of the aspect based on the current instance, serving as a prototype. + + Aspect arguments. + A new instance of the aspect, typically a clone of the current prototype instance. + + + + Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports) + have completed. + + + + + Interface through which a field- or property-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Gets the of the declaration that the binding represents. + + + + + Provides a mechanism to execute a strongly-typed action that depends on the type of the current location. + + Action. + Payload. + Type of the payload passed to the parameter. + + + + Invokes the Get semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + The value stored at the location. + + + + Gets metadata information about the field or property represented by the current binding. + + + + + Gets the type of the field or property. + + + + + Invokes the Set semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + New value to be stored at the location. + + + + A strongly-typed variant for . + + + + + + Invokes the Get semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + The value stored at the location. + + + + Invokes the Set semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + New value to be stored at the location. + + + + Exposes an method invoked by the method, + which allows to execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Type of the payload of the method. + + + + Method invoked by the method. + + The typed . + Payload. + Type of the value of the object. + + + + An interface for . + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Executes a delegate for the current . This method allows to + execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Class (typically a singleton) that contains the generic method + that will be executed with the right method generic argument. + An argument being passed to the method of the + parameter. + Type of the payload. + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Gets the current index arguments (in case of a property with parameters). + + + + + Gets or sets the object instance on which the method is being executed. + + + + + Gets the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the full name (including the full name of the declaring type) of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the name of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Invokes the Get Location Value semantic on the next node in the chain of invocation and stores the location value in the property. + + + + + Invokes the Set Location Value semantic on the next node in the chain of invocation and stores the value of the property into + the location. + + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + A strongly-typed specialization of the interface. + + Type of the location value. + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + Exposes an method invoked by the method, + which allows to execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Type of the payload of the method. + + + + Method invoked by the method. + + The typed . + Payload passed to the method. + Type of the value of the object. + + + + Runtime semantics of an aspect that, when applied on a location (field or property), intercepts invocations of + the Get () and Set () semantics. + + + + + Method invoked instead of the Get semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is retrieved. + + Advice arguments. + + + + Method invoked instead of the Set semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is changed. + + Advice arguments. + + + + Runtime semantics of aspects defined on a field, property, or parameter. + + + + + Initializes the current aspect. + + Location to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Location to which the current aspect is applied + Reserved for future usage. + + + + Ancestor of . + + + + + Runtime semantics of an aspect that, when applied on a location (field, property, or parameter), + validates the value assigned to this location using method , and throws + the exception returned by this method if any. + + Type of values validated by the current aspect. + + + + Validates the value being assigned to the location to which the current aspect has been applied. + + Value being applied to the location. + Name of the location. + Location kind (, , or + ). + + The to be thrown, or null if no exception needs to be thrown. + + + + Semantics of an aspect that, when applied to an assembly, adds a managed resource to this assembly. + + + + + Interface through which a method-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Invokes the next node in the chain of invocation. + + Target instance on which the method should be invoked (null if the method is static). + Method arguments. + Return value of the method. + + + + Runtime semantics of an aspect that, when applied on a method, intercepts invocations of this method. + + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Runtime semantics of aspects applied to methods. + + + + + Initializes the current aspect. + + Method to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Method to which the current aspect is applied + Reserved for future usage. + + + + Credentials that give access to 'protected' semantics. + + + + + Throws an exception if given credentials are not equal + to the current one. + + Other credentials. + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Creates a new . + + A new . + + + + Gets a null (or empty) / + + + + + Determines whether two are equal. + + An object. + An object. + + true if equals , + otherwise false. + + + + Determines whether two are different. + + An object. + An object. + + true if is different than , + otherwise false. + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Base class for aspects applied on types, but having the same lifetime as + instances of the type to which they are applied. + + + + + + + PostSharp.Aspects.InstanceLevelAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Creates a new instance of the aspect based on the current instance, serving as a prototype. + + Aspect arguments. + A new instance of the aspect, typically a clone of the current prototype instance. + + + + Gets the object to which the current aspect has been applied. + + + + + Method called after the an object enhanced by the current aspect has been + cloned using . The this + parameter refers to the new aspect instance in the cloned object. + + Aspect instance corresponding to the current + aspect instance in the cloned target object. + + + + Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports) + have completed. + + + + + Runtime semantics of an aspect that, when applied on a method, + defines an exception handler around the whole method body + and let the implementation of this interface handle the exception. + + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception (i.e., in a catch block). + + Advice arguments. + + + + Runtime semantics of . + + + + + Method executed before the body of methods to which this aspect is applied. + + Event arguments specifying which method + is being executed, which are its arguments, and how should the execution continue + after the execution of . + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + even when the method exists with an exception (this method is invoked from + the finally block). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + but only when the method successfully returns (i.e. when no exception flies out + the method.). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Extends the interface with two advises + to be applied on state machines. + + + + + Method executed when a state machine resumes execution after an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine yields, as the result of an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. In iterator methods, the + property gives access to the operand of the yield return statement. + + + + Gives access to a 'protected' interface, typically introduced + by a or a + Exposed interface. + + + + Gets a protected interface. + + Credentials of the current instance. + The implementation of the interface . + + + + Run-time semantics of aspects applied to types. + + + + + Initializes the current aspect. + + Type to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Type to which the current aspect is applied + Reserved for future usage. + + + + Custom attribute that, when applied to an aspect class, specifies how many manual lines of code + are avoided every time the aspect is being used. + + + + + Initializes a new . + + Number of lines of code saved every time the aspect is applied to a target class. + + + + Gets the number of lines of code saved every time the aspect is applied to a target class. + + + + + Extension methods for the interface. + + + + + Gets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is evaluated, or null if the location is static. + The field or property value. + + + + Gets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is evaluated, or null if the indexer is static. + The arguments of the indexer. + The indexer value. + + + + Gets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is evaluated, or null if the location is static. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.GetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object) + + + + The field or property value. + + + + Gets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is evaluated, or null if the indexer is static. + The arguments of the indexer. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.GetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,PostSharp.Aspects.Arguments) + + + + The indexer value. + + + + Sets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is set, or null if the indexer is static. + The arguments of the indexer. + The new value. + The indexer value. + + + + Sets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is set, or null if the location is static. + The new value assigned to the field or property. + The field or property value. + + + + Sets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is set, or null if the indexer is static. + The arguments of the indexer. + The new value. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.SetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,PostSharp.Aspects.Arguments,``0) + + + + The indexer value. + + + + Sets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is set, or null if the location is static. + The new value assigned to the field or property. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.SetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,``0) + + + + The field or property value. + + + + Arguments of advices of aspect type . + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Executes a delegate for the current . This method allows to + + + + + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Gets the current index arguments (in case of a property with parameters). + + + + + Gets the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the full name (including the full name of the declaring type) of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the name of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Invokes the Get Location Value semantic on the next node in the chain of invocation and stores the location value in the property. + + + + + Invokes the Set Location Value semantic on the next node in the chain of invocation and stores the value of the property into + the location. + + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + Aspect that, when applied on a location (field or property), intercepts invocations of + the Get () and Set () semantics. + + + + + + + PostSharp.Aspects.LocationInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the Get semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is retrieved. + + Advice arguments. + + + + Method invoked instead of the Set semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is changed. + + Advice arguments. + + + + Base class for aspects defined in fields, properties, or parameters. + + + + + + + PostSharp.Aspects.LocationLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Location to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Location to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Initializes the current aspect. + + Location to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Location to which the current aspect has been applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Enumerates the possible contexts in which the location validation advices can be invoked. + + + + + The value is being validated on method entry. + + + + + The value is being validated just before the method successfully returns. + + + + + Aspect that, when applied to an assembly, adds a custom attribute to this assembly. + + + + + Initializes a new . + + Name of the managed resource. + Content of the managed resource. + + + + Gets the content of the managed resource. + + + + + Gets the name of the managed resource. + + + + + Arguments of advices of aspects of type and + + + + Gets the arguments with which the method has been invoked. + + + + + Gets the exception currently flying. + + + + + Determines the control flow of the target method once the advice is exited. + + + + + Gets the method being executed. + + + + + User-defined state information whose lifetime is linked to the + current method execution. Aspects derived from + should use this property to save state information between + different events (, + and ). + + + + + Gets or sets the method return value. + + + + + Gets or sets the value yielded by the iterator method. + + + + + Aspect that, when applied on an abstract or extern method, creates an implementation for this method. + + + + + + + PostSharp.Aspects.MethodImplementationAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Arguments of advices of aspect type . + + + + + Gets the list of arguments with which the method has been invoked. + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Invokes the method that has been intercepted by calling the next node in the chain of invocation with given arguments, + without affecting the property . + + Arguments passed to the intercepted method. + Value returned by the intercepted method. + + + + Gets the method being executed. + + + + + Proceeds with invocation of the method that has been intercepted by calling the next node in the chain of invocation, + passing the current to that method and + storing its return value into the property . + + + + + Gets or sets the return value of the method. + + + + + Aspect that, when applied on a method, intercepts invocations of this method. + + + + + + + PostSharp.Aspects.MethodInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Base class for all aspects applied on methods. + + + + + + + PostSharp.Aspects.MethodLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Method to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Method to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Initializes the current aspect. + + Method to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Custom attribute that, when added to a static method, causes the method to be executed immediately + after the assembly is loaded by the CLR. The target method must be public, parameterless, void, and non-generic. + + + + + Initializes a new . + + Order in which the will be executed if the + current project contains several initializers. Initializers with smaller values of the + parameter get invoked first. + + + + Gets the order in which the will be executed if the + current project contains several initializers. Initializers with smaller values of the + property get invoked first. + + + + + Aspect that, when applied to a method, defines an exception + handler around the whole method and calls a custom method in this exception + handler. + + + + + + + PostSharp.Aspects.OnExceptionAspect + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Gets the type of exception handled by this aspect. + + Method to which the current aspect is applied. + The type (derived from ) of exceptions handled + by this aspect. + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception (i.e., in a catch block). + + Advice arguments. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Aspect that, when applied to a method defined in the current assembly, inserts a piece + of code before and after the body of these methods. + + + + + + + PostSharp.Aspects.OnMethodBoundaryAspect + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method executed before the body of methods to which this aspect is applied. + + Event arguments specifying which method + is being executed, which are its arguments, and how should the execution continue + after the execution of . + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + even when the method exists with an exception (this method is invoked from + the finally block). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine resumes execution after an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + but only when the method successfully returns (i.e. when no exception flies out + the method.). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine yields, as the result of an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. In iterator methods, the + property gives access to the operand of the yield return statement. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Wraps a or a type name. + + + + + Wraps a into a . + + A . + A wrapping . + + + + Wraps a type name into a . + + The type name. + A wrapping the type name. + + + + Wraps an array of type names into an array of . + + An array of type names. + An array of wrapping . + + + + Wraps an array of into an array of . + + An array of . + An array of wrapping . + + + + Converts a into a . + + + + + returns + M:PostSharp.Aspects.TypeIdentity.ToType + + + + + + + Gets the wrapped , or null it the property is set. + + + + + Gets the wrapped type name, or null it the property is set. + + + + + Base class for all aspects applied on types. + + + + + + + PostSharp.Aspects.TypeLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Type to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Type to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Initializes the current aspect. + + Type to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Type to which the current aspect has been applied. + + + + Base class for all custom attributes representing an advice. + + + + + + + PostSharp.Aspects.Advices.Advice + + + + + + + A human-readable description of the current advice. + + + + + Reduction in the code lines count achieved by applying the advice instance to one code element. + + + + + Base class for advice instances, which can be provided dynamically by the aspect thanks to the interface. + + + + + + + PostSharp.Aspects.Advices.AdviceInstance + + + + + + + A human-readable description of the current advice instance. + + + + + The number of lines of hand-written code avoided by this specific . + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + Enumerates the reasons why the target method of the has been invoked. + + + + + None. + + + + + Manual call of the InitializeAspects method. + + + + + Call from the instance constructor. + + + + + Call from MemberwiseClone. + + + + + Call during deserialization. + + + + + Custom attribute that, when applied on an aspect class, requires custom + attributes present on the aspect class to be copied to the target of this class. + When applied on an introduced member (see ), + this custom attribute requires custom attributes present on the aspect member + to be copied to the introduced member. + + + + + Requires custom attributes present on the aspect class or aspect class member + to be copied to the aspect target or to the introduced member, respectively. + + Base type of custom attributes to be copied. + + + + Requires custom attributes present on the aspect class or aspect class member + to be copied to the aspect target or to the introduced member, respectively. + + Base types of custom attributes to be copied. + + + + Determines what should happen when a custom attribute of the same + type is already present on the target declaration. + + + + + Gets the list of custom attribute types to be copied. + + + + + Behavior of when a custom + attribute of the same type already exists on the target declaration. + + + + + Default (). + + + + + Emits an error message. + + + + + Silently ignore this custom attribute (does not copy it, without + error message). + + + + + Adds a new copy (possibly duplicate) of the custom attribute. + + + + + Merges the existing custom attribute with the template custom attribute + by adding properties and fields. If the existing custom attribute defines + the same properties and fields as the template custom attribute, + they are not overridden. + + + + + Merges the existing custom attribute with the template custom attribute + by adding and replacing properties and fields. If the existing custom + attribute defines the same properties and fields as the template custom + attribute, they are replaced by the values defined in the template + custom attribute. + + + + + Exposes the semantics of an event for use with the aspect extension. + + Handler type (derived from ). + + + + Gets a delegate enabling to invoke the add accessor + of the imported event. + + + + + Gets a delegate enabling to invoke the remove accessor + of the imported event. + + + + + Defines the signature of methods implementing the + and semantics of an event. + + Handler. + Handler type (derived from ). + + + + Base class for all advices that are possibly composed of + multiple advices that can be grouped together using the + property. + + + + + + + PostSharp.Aspects.Advices.GroupingAdvice + + + + + + + Name of the master advice method. If this property is not set, + the current method is itself the master of the group. Only + master methods can define selectors () + and dependencies (). + + + + + Interface that allows an aspect to provide aspects dynamically, instead of declaratively using custom attributes. + + + + + Provides an enumeration of advices, represented as instances of the class, for the current aspect instance. + + Element of code to which the current aspect has been applied. + A collection of advices to be added to the current aspect instance. + + + + Represents an advice that imports a field or property (represented by a ) of the target class + into a field of the aspect class. This class is the imperative equivalent of the declarative advise. + + + + + Initializes a new instance of the class and specifies which field or property should be imported by giving its reflection representation. + + A field of the aspect class to which should be bound at runtime. + This field can be of type , , or a type that is both (a) derived from ICollection<ILocationBinding> and (b) has a parameterless constructor. + The field or property to import. + + + + Initializes a new instance of the class and specifies the name of the property to be imported; the type of this + property will be matched according to the type of the aspect field. + + A field of the aspect class to which the field or property should be bound at build time. + This field must be of type . + The name of the property to import. + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + Initializes a new instance of the class and specifies the name of the property to be imported; the type of this + property will be matched according to the type of the aspect field. + + A field of the aspect class to which the field or property should be bound at build time. + This field must be of type . + Fallback list of possible names of the property to import. + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + Gets the field or property of the target class that needs to be imported into the aspect. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Base class for and . + + + + + Gets the field of the aspect class to which the field or property needs to be bound. + + + + + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Custom attribute that, when applied to an instance field of an aspect class, determines + that this field should be bound to a method, event or property, of the + target class of this aspect. Valid types for fields are + a concrete (to bind to a method), + or + (to bind to a property), or (to bind to an event). + + + + + Initializes a new . + + + + + + + PostSharp.Aspects.Advices.ImportMemberAttribute + + + + + + + param + memberName + M:PostSharp.Aspects.Advices.ImportMemberAttribute.#ctor(System.String) + + + + + + + Initializes a new . + + Possible names of the member to import in the order of precedence. + + + + Determines whether a build time error must be issued if the member to be + imported is absent. If false, the binding field will be null + in case the imported member is absent. + + + + + Name of the imported member. + + + + + Array of possible names of imported member in the order of precedence. + + + + + Determines when the member should be imported: either before () + or after () members have been introduced by the current aspect. + Default is . + + + + + Enumeration of moments when members should be imported into an aspect. + + + + + + + + + + Before the aspect introduces its own members. This is similar to calling the overridden method using the + base keyword in C#. The overridden method implementation is always selected, even if the method + is virtual. + + + + + After the aspect introduces its own members. Note that importing a member introduced by the current + aspect makes sense only if the member has been introduced as virtual; in this case, the + the imported member is dynamically resolved using the virtual table of the target object. + + + + + Represents an advises that import a method of the target class into the aspect class. + + + + + Initializes a new instance of the . + + A field of the aspect class into that will be assigned to a delegate of the imported method at runtime. The field type should be a delegate of the same signature than the method to import. + Name of the method to import. + + true if the build should fail if there no matching method in the target class, false to set to null in this case. + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Initializes a new instance of the . + + A field of the aspect class into that will be assigned to a delegate of the imported method at runtime. The field type should be a delegate of the same signature than the method to import. + Fallback list of possible names of the member to be imported. + + true if the build should fail if there no matching method in the target class, false to set to null in this case. + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Custom attribute that, when applied to a method of an aspect class, specifies that this method + should be invoked whenever the aspect instance needs to be initialized. The target method + must have a void return value and have a single parameter of type . + This method is equivalent to + + + + + + PostSharp.Aspects.Advices.InitializeAspectInstanceAdvice + + + + + + + Enumeration of actions to be overtaken when an interface that should be introduced into a type is already + implemented by that type. + + + + + . + + + + + Fails and emits an error message. + + + + + Silently ignore this interface (does not introduce it). + + + + + Represents an advise that introduces an interface into the target class. The interface must be implemented by the aspect class. + + + + + Initializes a new instance of the class. + + Interface to introduce to the target class. Must be implemented by the aspect class itself. + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Gets the interface to be introduced into the target class. + + + + + + + summary + P:PostSharp.Aspects.Advices.IntroduceInterfaceAdviceInstance.MasterAspectMember + + + + + + + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Custom attribute that, when applied to an aspect class, specifies that the aspect should + introduce a given interface into the type to which the aspect is applied. + + + + + Initializes a new . + + Interface that should be introduced into the types + to which the aspect is applied. + + + + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be exposed indirectly through the + interface. If false, the interface + will be implemented directly by the type. + + + + + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Base class for . + + + + + Determines whether the introduced member should be virtual. + + + + + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Gets the visibility of the introduced member. + + + + + Custom attribute that, when applied on a method, event or property of an aspect class, specifies + that this method, event or property should be introduced into the types to which the aspect is applied. + + + + + + + PostSharp.Aspects.Advices.IntroduceMemberAttribute + + + + + + + Determines whether the property has been specified. + + + + + Determines whether the introduced member should be virtual. + + + + + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Determines the visibility (, (, ...) + of the introduced member. + + + + + Represents an advice that introduces a method of the aspect class into the target class. + + + + + Initializes a new instance of the class. + + A public method of the aspect class. + Visibility of the introduced method. + + true if the introduced method should be virtual, false if it should be non-virtual (or sealed, if the method is overriding another one), + or null if the method should be virtual only if the overridden method is also virtual. See for details. + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + A weakly-typed interface for the class. + + + + + Gets the property value. + + The property value. + + + + Sets the property value. + + The new property value. + + + + Custom attribute that, when applied on a method of an aspect class, specifies that this method + has the same semantic as the method + of the interface. + + + + + + + PostSharp.Aspects.Advices.LocationValidationAdvice + + + + + + + Enumeration of actions to be overtaken by the aspect extension + when the member to be introduced already exists in the aspect target type or its base type. + + + + + + + + + + Emits a build time error. + + + + + Silently ignore the member introduction. + + + + + Tries to override the member, and fails if it is impossible (i.e. if the existing member is defined + in a base type and is sealed or non-virtual). + + + + + Tries to override the member, and silently ignore if it is impossible (i.e. if the existing member is defined + in a base type and is sealed or non-virtual). + + + + + Custom attribute that, when applied on an advice method, specifies the name of + the method that will be invoked at build-time to return the set of elements of code + to which the advice applies. + + + + + Initializes a new . + + Name of the method returning the set of targets. This method should have + a specific signature as discussed in the class documentation. + + + + Gets the name of the method returning the set of code elements. + + + + + Custom attribute that, when applied on an advice method, specifies to which elements of + code this advice applies, based on the kind, name and attributes of code elements. + Works similarly as . + + + + + + + PostSharp.Aspects.Advices.MulticastPointcut + + + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies. + + + + + Gets or sets the expression specifying to which members + the aspect extension applies. + + + + + Gets or sets the kind of elements to which this aspect extension applies. + + + + + Custom attribute that, when applied to a method of an aspect class, specifies that this method + should be invoked after the instances of all the aspects applied on the same target has been initialized. The target method + must have a void return value and have a single parameter of type . + + + + + + + PostSharp.Aspects.Advices.OnAspectsInitializedAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventAddHandlerAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventInvokeHandlerAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies that this method is an advice + having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventRemoveHandlerAdvice + + + + + + + Custom attribute that, when applied to a method of an aspect implementing , specifies that this method should be executed + after the last instance constructor of the target class of the aspect has completed execution. That is, this method will be invoked when the target object + will be fully constructed. This custom attribute can be applied only on methods that have void return type and accepts no parameter. + + + + + + + PostSharp.Aspects.Advices.OnInstanceConstructedAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnLocationGetValueAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnLocationSetValueAdvice + + + + + + + Base class for , , + or . + + + + + Determines how the advice should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodEntryAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodExceptionAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodExitAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodInvokeAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodResumeAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodSuccessAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodYieldAdvice + + + + + + + Custom attribute, typically accompanying an advice, specifying + to which code elements the advice applies. + + + + + + + PostSharp.Aspects.Advices.Pointcut + + + + + + + Exposes the semantics of a parameterless property for use + with the aspect extension. + + Property value type. + + + + Gets a delegate enabling to invoke the get accessor + of the imported property. + + + + + Gets a delegate enabling to invoke the set accessor + of the imported property. + + + + + Mimics the semantics of a property accepting a single index parameter, for use + with the aspect extension. + + Property index type. + Property value type. + + + + Gets a delegate enabling to invoke the get accessor + of the imported property. + + + + + Gets a delegate enabling to invoke the set accessor + of the imported property. + + + + + Defines the signature of methods implementing the + semantic of a parameterless property. + + Property value type. + The property value. + + + + Defines the signature of methods implementing the + semantic of a property with a single index parameter. + + Index. + Property value type. + Property index type. + The property value. + + + + Defines the signature of methods implementing the + semantic of a parameterless property. + + The property value. + Property value type. + + + + Defines the signature of methods implementing the + semantic of a property with a single index parameter. + + Index. + The property value. + Property value type. + Property index type. + + + + that selects exactly the aspect target. + + + + + + + PostSharp.Aspects.Advices.SelfPointcut + + + + + + + Configuration of an . + + + + + + + PostSharp.Aspects.Configuration.AspectConfiguration + + + + + + + Gets or sets the aspect priority. Aspects with smaller priority are processed first. The default priority is zero. + + + + + Gets or sets the collection of dependencies. + + + + + Gets or sets the type of the serializer that will be used + to configure the current aspect. + + + + + Configures an aspect of type . + + + + + + + PostSharp.Aspects.Configuration.AspectConfigurationAttribute + + + + + + + Gets or sets the weaving priority of the aspect. + + + + + Creates a concrete instance specifically for the current + type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Gets the corresponding to the current custom attribute. + + An corresponding to the current custom attribute. + + + + Gets or sets the of the serializer that will be used + to configure the current aspect. + + + + + Sets up an object according to the current custom attribute instance. + + The instance previously returned by the + method. + + + + Custom attribute that, when applied to an aspect, specifies which custom attribute type + (derived from ) can provide declarative configuration for the aspect. + + + + + Initializes a new . + + Custom attribute type + (derived from ). + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.CompositionAspectConfiguration + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces specified by + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface specified by the property. + + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces specified by or + is already implemented by the type to which the aspect is applied. + + + + + Gets or sets the array of interfaces to be introduced indirectly into the target type of the aspect. These + interfaces will become accessible through the interface. + + + + + Gets or sets the array of interfaces that should be introduced publicly into the target type of the aspect. + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces specified by + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface specified by the property. + + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces specified by or + is already implemented by the type to which the aspect is applied. + + + + + Gets or sets the array of type names of interfaces to be introduced indirectly into the target type of the aspect. These + interfaces will become accessible through the interface. + + + + + Gets or sets the array of type names of interfaces that should be introduced publicly into + the target type of the aspect. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration + + + + + + + Gets or sets the construction of the custom attribute that must be applied to the target of this aspect. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.EventInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.EventInterceptionAspectConfigurationAttribute + + + + + + + Allows an to depend on a profile, i.e. + an external piece of configuration stored as a resource in the project file. + Classes derived from may implement this interface. + + + + + Applies the profile to the current configuration object. + + The profile object, represented by the resource named + in section named , with namespace . + + + + + Gets the name of the profile, i.e. the name of the resource representing the profile. + + + + + Gets the name of the project section in which the profile resource is stored. + + + + + Gets the namespace of the project section in which the profile resource is stored. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.LocationInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.LocationInterceptionAspectConfigurationAttribute + + + + + + + Configuration of aspects of type . + + + + + Initializes a new . + + Name of the managed resource. + Content of the managed resource. + + + + Gets the content of the managed resource. + + + + + Gets the name of the managed resource. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.MethodInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.MethodInterceptionAspectConfigurationAttribute + + + + + + + Configuration of the aspect. + + + + + + + PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Gets or sets the type of exceptions that are caught by this aspect. + + + + + Custom attribute that, when applied on a class implementing , + defines the configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute + + + + + + + Gets or sets the type of exceptions that are caught by this aspect. + + + + + Configuration of the aspect. + + + + + + + PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfiguration + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Custom attribute that, when applied on a class implementing , + defines the configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfigurationAttribute + + + + + + + Specifies an aspect dependency matching an advice of the same aspect instance. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Name of the advice method. + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Name of the advice method. + + + + Gets the name of the method implementing the advice. + + + + + Enumeration of the different kinds of relationships of specified by aspect dependencies. + + + + + The dependency is ignored. + + + + + The dependency specifies an order relationship. + + + + + The dependency specifies that the current aspect or advice requires + another aspect or advice. + + + + + The dependency specifies that the current aspect or advice + conflicts with another aspect or advice. + + + + + The dependency specifies that the current aspect or advice + commutes with another aspect or advice. + + + + + Base class for all custom attributes defining aspect dependencies. An aspect dependency determines the + behavior of aspects or advices when used in conjunction with other aspects and advices. + Aspect dependencies determine ordering, requirements, conflicts, and commutativity of aspects and advices. + + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + + + + Gets the dependency action, i.e. the kind of relationship specified by the dependency + (, , + , or ). + + + + + If true, specifies that the constraint (of type + or ) should emit a warning instead of an error if not + respected. + + + + + Gets the position of the current dependency, i.e. actually the position of the other + aspect or advices with respect to the one related to this dependency. + + + + + Determines the target ( or ) + to which the aspect dependency apply. + + + + + Aspect type to which this dependency applies. This property is required when the + custom attribute is applied at assembly level. It is ignored when applied on + class or method level. + + + + + Collection of . + + + + + + + PostSharp.Aspects.Dependencies.AspectDependencyAttributeCollection + + + + + + + Enumeration of the direction of the relationship specified by an aspect dependency. + + + + + Any order possible (or order not relevant). + + + + + The current aspect or advice is positioned before the other aspect or handler. + + + + + The current aspect or advice is positioned after the other aspect or handler. + + + + + Enumeration of targets ( or ) + to which the aspect dependency apply. + + + + + Natural target of the aspect. + + + + + Declaring type of the natural target of the aspect. + + + + + Specifies an aspect dependency matching aspects or advices having a given effect. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Effect (see ). + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Effect (see ). + + + + Gets the effect that the aspects or advices must have in order to match the current dependency. + + + + + Specifies an aspect dependency matching aspects or advices that are a part of a given role. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Role. + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Role. + + + + Gets the role that the aspects or advices must be a part of in order to match the current dependency. + + + + + Specifies an aspect dependency matching aspects of a specified type, and all its advices. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Aspect type (derived from ). + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Aspect type (derived from ). + + + + Gets the type from which the aspects should be derived in order to match the current dependency. + + + + + Specifies that the aspect or aspect advice to which this custom attribute is applied is a + part of a given role. This aspect or advice can then be matched by / + + + + + Initializes a new . + + Role. + + + + Gets the role into which the aspect or advice to which this custom + attribute is applied will be enrolled. + + + + + List of standard effects. + + + + + Change the flow control (for instance by having the possibility to skip execution of an + intercepted method). + + + + + Custom effect (implemented in an aspect advice). All advices have this effect by default, + unless they are annotated by . + + + + + Introduction of a custom attribute. + + + + + Gets a string representing the effect of introducing an interface into a type. + + Name of the introduced interface. + A string that, by convention, represents the introduction of an interface named + into a type. + + + + Gets a string representing the effect of importing a member into from the target + type into the aspect. + + Name of the imported member. + A string that, by convention, represents the import of a member named + from the target type into the aspect. + + + + Gets a string representing the effect of introducing a member into a type. + + Name of the introduced member. + A string that, by convention, represents the introduction of a member named + into a type. + + + + Introduction of an interface. + + + + + Import of a type member. + + + + + Introduction of a type member. + + + + + List of standard roles. + + + + + Caching. + + + + + Data binding (for instance implementation of ). + + + + + Event broker (a system role used internally by PostSharp to realize + the handler). + + + + + Exception handling. + + + + + Performance instrumentation (for instance performance counters). + + + + + Object persistence (for instance Object-Relational Mapper). + + + + + Security enforcing (typically authorization). + + + + + Threading (locking). + + + + + Tracing and logging. + + + + + Transaction handling. + + + + + Validation of field, property, or parameter value. + + + + + Declares that the aspect class or advice to which this custom attribute is applied + is exempt of a given effect. + + + + + Initializes a new declaring that + the aspect class or advice to which this custom attribute is applied has + no effect at all. + + + + + Initializes a new declaring that + the aspect class or advice to which this custom attribute is applied is + exempt of the specified effects. + + List of effects of which the aspect class or advice + to which this custom attribute is applied is guaranteed to be exempt. + + + + Implementation of representing a list of 1 argument. + + Type of the first argument. + + + + Initializes a new . + + + + + First Argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 2 arguments. + + Type of the first argument. + Type of the second argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 3 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 4 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 5 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 6 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 7 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + Type of the seventh argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Seventh argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 8 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + Type of the seventh argument. + Type of the eighth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Seventh argument. + + + + + Eighth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a + list of arguments of arbitrary length and type. + + + + + Initializes a new . + + + containing the argument values. + + + + Gets or sets the underlying array of arguments. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Base class for Laos serializers, whose role is to serialize aspect instances at compile-time and + deserialize them at runtime. + + + + + + + PostSharp.Aspects.Serialization.AspectSerializer + + + + + + + Deserializes a stream into an array if aspects. + + Stream containing serialized aspects. + Metadata dispenser to be used to resolve serialized metadata references in . + An array of aspects. + + + + Deserializes aspects contained in a managed resource of an assembly. + + Assembly containing the serialized aspects. + Name of the managed resources into which aspects have been serialized. + Metadata dispenser to be used to resolve serialized metadata references in this resource. + An array of aspects. + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Implementation of used at runtime when aspect instances + are deserialized. By overriding the default binder, you can resolve assembly names differently. + This can be useful if assemblies have been renamed or merged between PostSharp run and execution + + + + + Initializes a new . + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + The type of the object the formatter creates a new instance of. + + + + Implementation of based on the + provided by the full version + of the .NET Framework. + + + + + + + PostSharp.Aspects.Serialization.BinaryAspectSerializer + + + + + + + Adds an item to the chain of surrogate selectors + used during the process of serializing aspects. + + A new surrogate selector. + + + + Deserializes a stream into an array if aspects. + + Stream containing serialized aspects. + Metadata dispenser to be used to resolve serialized metadata references in . + An array of aspects. + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + A that receives an + before serialization. + + + + + Sets the . + + An . + + + + When used as a value of . + property, specifies that the aspect should not be serialized but should instead be constructed at runtime using MSIL instructions. + + + + + + + PostSharp.Aspects.Serialization.MsilAspectSerializer + + + + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Implementation of based on the , for use on any supported .NET platform. + + + + + + + PostSharp.Aspects.Serialization.PortableAspectSerializer + + + + + + + Gets or sets the used to deserialize aspects. + + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Represents a node in a double-linked list. + + Type of values stored in the list. + + + + Gets the next node in the list, or null if the current node is the last one in the list. + + + + + Gets the previous node in the list, or null if the current node is the first one in the list. + + + + + Gets the value stored in the current node. + + + + + Represents a double linked list. + + Type of values stored in the link list. + + + + Gets the first node in the list, or null if the list is empty. + + + + + Determines whether the list is empty. + + + + + Gets the last node in the list, or null if the list is empty. + + + + + Represents a node in a singly linked list. + + Type of values stored in the list. + + + + Gets the next node in the list, or null if the current node is the last one in the list. + + + + + Gets the value stored in the current node. + + + + + Extensions to the interface. + + + + + Transforms an into an . + + A , or null. + Type of values. + An that can enumerate all elements in . + If is null, an empty enumerable is returned. + + + + + Transforms a into an . + + An . + Type of values. + An that can enumerate all elements in . + If is null, an empty enumerable is returned. + + + + + A value-type implementation of the interface. + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.First + + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.IsEmpty + + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.Last + + + + + + + Represents a single-listed link. + + Type of values stored in the list. + + + + Gets the first node of the list. + + + + + Gets a value-type enumerator. + + An enumerator. + + + + Determines whether the list is empty. + + + + + An enumerator allowing to enumerate a . + + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + The collection was modified after the enumerator was created. + + + + that, when applied on a declaration, limits the scope (namespace or type) in which this declaration + can be used. This constraint is useful to isolate several components from each other, even if they are implemented in + the same assembly. The ComponentInternal constraint sets the visibility of a declaration between internal and private. + The constraint cannot be applied to public or protected declarations. + + + + + Initializes a restricting the target declaration from being used + from another namespace than the namespace of the declaration. + + + + + Initializes a restricting the target declaration from being used + outside of given types or namespaces, given by strings. + + List of types or namespaces from which the target declaration + can be used. + + + + Initializes a restricting the target declaration from being used + outside of given types or namespaces, given as . + + List of types from which the target declaration can be used. If the name of a + type is NamespaceType, the whole namespace of this type is allowed. + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Root class for all constraints based on . + A constraint is a piece validation logic executed at build time. Constraints + are applied to elements of code ((, , + , , , + , , ) + typically using multicast custom attributes, and verified + at build time for every assembly using this element of code. + + + + + + + PostSharp.Constraints.Constraint + + + + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Custom attribute that, when applied on a declaration, causes PostSharp to emit a warning if the declaration is being used. + + + + + + + PostSharp.Constraints.ExperimentalAttribute + + + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint is a piece of validation logic executed at build time. Constraints + are applied to elements of code (, , + , , , + , , ), + typically (but not necessarily) using custom attributes or . + + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + , when applied to a declaration, prevents it to be used from an different assembly. + This constraint can be used when a declaration must be made public for technical reasons, but its author do + not want it to be used in external code. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + that, when applied on an interface, prevents it to be implemented + in a different assembly. This constraint should be used when the author of an interface + does not expect users to implement the interface and wants to reserve the possibility + to add new methods to the interface. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint is a piece validation logic executed at build time. Constraints + are applied to elements of code ((, , + , , , + , , ), + typically using custom attributes or , and verified + at build time for every assembly using this element of code. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint that validates a specific element of code. Use an + to validate relationships between elements of code. + + + + + Validates the element of code to which the constraint is applied. + + Element of code to which the constraint is applied (, , + , , , + , , ). + + + + Custom attribute that, when applied to a target declaration, causes PostSharp to emit a warning if the declaration + is being referenced from classes that are not derived from the target class. This constraint is similar to the + C# keyword protected and should be used only when the target declaration must be made public or internal + for non-architectural reasons. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + + param + target + M:PostSharp.Constraints.ProtectedAttribute.ValidateConstraint(System.Object) + + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Implementation of based on . + + + + + + + PostSharp.Constraints.ReferentialConstraint + + + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Implementation of based on . + + + + + + + PostSharp.Constraints.ScalarConstraint + + + + + + + Validates the element of code to which the constraint is applied. + + Element of code to which the constraint is applied (, , + , , , + , , ). + + + + Assigns a unique identifier to an assembly. This assembly identifier is used + to generate unique attribute identifiers. + + + + + Initializes a new . + + Assembly identifier. + + + + Enumeration of contexts in which assemblies can be loaded. + + + + + Reference assemblies the ones the project is being linked against. They are typically located + in directory C:\Program Files\Reference Assemblies for the proper target platform. + + + + + Runtime assemblies are the ones loaded at build time in the CLR. They are typically located + in GAC. + + + + + Enumeration of standard levels of backward compatibility. + + + + + No compatibility level defined (latest at execution time). + + + + + Compatibility level for PostSharp 3.0. + + + + + Latest at build time. + + + + + Sets the level of backward compatibility required by aspects in the current assembly. + + + + + Initializes a new . + + Level of backward compatibility required by aspects in the current assembly. + + + + Custom attribute added to the assembly manifest of modules processed by PostSharp. + + + + + Instantiates a new and specifies the license number + (not the full license key). + + License number. + + + + Instantiate a new with a text message, + typically used when PostSharp runs in evaluation mode. + + The watermark text. + + + + Custom attribute that, when applied on an assembly, means that a given message + should be escalated to an error during the current PostSharp session. + + + + + Initializes a new . + + Identifier of the message to be disabled. + + + + Gets the identifier of the message to be disabled. + + + + + Defines constants identifying the different variants of the + .NET Framework (, , ). + + + + + .NET Compact Framework. + + + + + Convert a byte array (typically containing the public key token of mscorlib) + into a string that can be compared to one of the constants defined in this class. + + A byte array (typically containing the public key token of mscorlib) + A string that can be compared to one of the constants defined in this class + + + + Normal, full .NET Framework. + + + + + Micro Framework. + + + + + Silverlight. + + + + + Internal Only. Custom attribute used internally by PostSharp to mark + elements having inherited custom attributes. This custom attribute should not + be used in custom code, otherwise PostSharp may not work properly. + + + + + Gets a text given its key. + + + + + Gets a message text given a message key. + + Message key. + The text corresponding to . + + + + Receives messages. + + + + + Writes a message to the sink. + + A message. + + + + Custom attribute meaning that custom attributes of a given type are + bound to the implementation, not to the semantics. + + + + + Initializes the new . + + Type of the custom attribute that + should not be moved from implementation to semantic. + + + + Gets the type of the custom attribute that + should not be moved from implementation to semantic + + + + + Exception thrown at build time by implementation of + when an annotation is invalid. + + + + + Initializes a new with default message. + + + + + Deserialization constructor. + + Info. + Context. + + + + Initializes a new and with a specified exception message. + + Exception message + + + + Initializes a new with a specified exception message + and inner . + + Exception message. + Inner exception. + + + + Provides information about the current PostSharp environment. + + + + + Gets the currently executing project. + + + + + + + summary + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + param + name + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + returns + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + Finds the location of an assembly given its name. + + Assembly name. + + or . + The full path of the assembly, or null if the assembly could not be found. + + + + Loads an given its file name. + + Full assembly path. + The . + + + + Provides information about the currently executing project. + + + + + Evaluates an expression (that is, replace parameters by their actual value). + + An expression. + The evaluated expression, or null if one parameter could not be + resolved. + + + + Gets the set of project extension elements () given their name and XML namespace. + + Local name of the project extension element. + XML namespace of the project extension element. + The set of project elements named in all loaded projects. + + + + Gets the variant of the .NET Framework against which the .NET assembly + currently processed is linked. + + A string uniquely identifying the framework variant, to be compared + to the constants defined in the class. + Actually, the public key token of mscorlib is returned. + + + + Gets a build-time service exposed by PostSharp. + + + true whether an exception should be thrown in case the service cannot be acquired, otherwise false. + The default value is true. + An interface derived from . + The service , or null if the service could not be acquired and + was set to false. + + + + Gets the assembly that is being transformed by PostSharp. + + + false if the system has to be returned, true if a wrapper has to be returned. + The assembly being processed. If is true, this method returns an instance of a PostSharp internal + type implementing the interface. Otherwise, the reflection is returned. + + + + Gets the context of the current project that serves as a project-scoped cache. + + + + + Gets the variant and version of the .NET Framework that the assembly being built targets. + + + + + Exposes the method, which gets the reference identity of + the assembly declaring a given type. + + + + + Returns the reference identity of the assembly declaring a type. + + A . + The identity of the reference assembly defining . This assembly is possibly + different than the runtime assembly, which is available from the property + of the class. This method may return null if is + an internal type of a system assembly. + + + + A service exposed by the build-time part of PostSharp. + + + + + Exposes build-time services. + + + + + Gets a build-time service exposed by PostSharp. + + + true whether an exception should be thrown in case the service cannot be acquired, otherwise false. + The default value is true. + An interface derived from . + The service , or null if the service could not be acquired and + was set to false. + + + + A context that provides storage for arbitrary items. + + + + + Gets a value of a given type from the store. + + Type of the value. + The value whose type is , or null if the store + does not contain such value. + + + + Gets a value from the cache or adds it if it does not exist yet. + + The delegate invoked if no value of type is + present in the cache. + Type of the value. + Either the value of type present in the cache, + either the result of the delegate. + + + + Gets a value from the cache or adds a default value if it does not exist yet. + + Type of value. + Either the value of type present in the cache, + either a new object of type . + + + + Adds a value to the store or replace it if a value of the same type already exists. + + The new value. + Type of the new value. + + + + Represents a version and variant of the .NET framework (running on a device) on which the project being built is design to run. + + + + + Unique string identifier of the target device. + + + + + Gets the target profile of the framework (e.g. WindowsPhone). + + + + + Identifier of the framework family (, + , , + ). + + + + + Gets the version of the target profile. + + + + + Interface that, when implemented by a custom attribute (), + causes PostSharp to invoke a validation method for every instance + of that custom attribute. + + + + + Method invoked at build time to ensure that the aspect has been applied to + the right target. + + Target element. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Service that allows build-time code to push annotations (both programmatic and user-visible) + to PostSharp Tools for Visual Studio. + + + + + Pushes an annotation to PostSharp Tools for Visual Studio. + + The declaration to which the annotation relate. + The type of the annotation. + Arguments of the annotation. + A human-readable description of the annotation. + A number incrementing the number of lines of code saved on . + + + + Encapsulates a message (error, warning, info, ...). + + + + + Initializes a new and specifies only required parameters. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Name of the component emitting the message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + File that caused the error, or null if + the file is unknown or does not apply. + Position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + Position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + The that caused this message, + or null if this message was not caused by an + exception. + Name of the component emitting the message. + Link to the help file page associated to this message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + File that caused the error, or null if + the file is unknown or does not apply. + Start position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + Start position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + End position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + End position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + The that caused this message, + or null if this message was not caused by an + exception. + Name of the component emitting the message. + Link to the help file page associated to this message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Fully formatted message text. + Link to the help file page associated to this message. + Name of the component emitting the message. + The that caused this message, + or null if this message was not caused by an + exception. + + + + Returns a string composed of the messages of + all inner exceptions. + + The outer exception. + A string composed of the messages of all + and all inner exceptions, + concatenated by the string -->. + + + + Gets the help link. + + + + + Gets the + + + + + Location of the source code artifact causing the message. + + + + + Gets the end column in the file that caused the message. + + + + + Gets the end line in the file that caused the message. + + + + + Gets the name of the file that caused + the message. + + + + + Gets the start column in the file that caused the message. + + + + + Gets the start line in the file that caused the message. + + + + + Gets the message type identifier. + + + + + Gets the message formatted text. + + + + + When set to the locationLine or locationColumn constructor parameter or the , + , , , means that the value of this property is unknown. + + + + + Gets the message severity. + + + + + Gets or sets the name of the source component. + + + + + Writes a message by providing a object. + + A . + + + + Obsolete. + + + + + param + severity + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + param + errorCode + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + param + message + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Error message arguments. + + + + Writes a message. + + Severity. + Error code. + Error message. + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Provides a base implementation of + where the message key is supposed to be in format PRE0000, where + PRE is a prefix and 0000 is an integer. Keys for help URLs + have the format PRE0000?. + + + + + Initializes a new . + + Prefix of all messages provided by the new dispenser. + + + + Gets the message help URL of a given number. + + Message number. + The message help URL corresponding to . + + + + Gets the message text of a given number. + + Message number. + The message text corresponding to . + + + + Gets a message text given a message key. + + Message key. + The text corresponding to . + + + + Gets the message prefix. + + + + + Exception embedding a . + + + + + Initializes a new from + an existing . + + A . + + + + Serializes the current object. + + Serialization information. + Serialization context. + + + + Gets the em + + + + + Provides commodity methods to work with an . + + + + + Initializes a new backed by a . + + Name of the component emitting. the messages. + The that will be used to + retrieve message texts. + + + + Instantiates a backed by a . + + Source name. + The . + + + + + + summary + M:PostSharp.Extensibility.MessageSource.CreateMessage(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + + + + + + + + returns + M:PostSharp.Extensibility.MessageSource.CreateMessage(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + Creates a from the current . + + Location of the source code artifact causing the message. + Severity. + Message identifier (resolved by the current ). + Exception causing the message, or null. + Arguments of the message text. + A . + + + + Gets the current message sink. + + + + + Writes a message to the sink. + + A message. + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[]) + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],PostSharp.Reflection.SymbolSequencePoint) + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String) + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32) + + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32) + + + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + + + + + + + + Emits a and specifies an inner . + + Location of the source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + The that caused this message, + or null if this message was not caused by an + exception. + + + + Emits a . + + Location of the source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact (, , , + , , ) that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Custom attribute that, when applied on an aspect, causes the aspect to increment some metric at build time. + + + + + Initializes a new . + + Metric name. + Metric operand. + + + + Determines whether the usage of features used by the target aspects must be instrumented. + + + + + Gets the name of the metric. + + + + + Gets the operand of the metric. + + + + + Custom attribute that can be applied to multiple elements + using wildcards. + + + + + + + PostSharp.Extensibility.MulticastAttribute + + + + + + + If true, indicates that this attribute removes all other instances of the + same attribute type from the set of elements defined by the current instance. + + + + + Determines whether this attribute is inherited + + + + + Gets or sets the priority of the current attribute in case that multiple + instances are defined on the same element (lower values are processed before). + + + + + Determines whether this attribute replaces other attributes found on the + target declarations. + + + + + Gets or sets the assemblies to which the current attribute apply. + + + + + Gets or sets the kind of elements to which this custom attributes applies. + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies, when the member is external to the current module. + + + + + Gets or sets the visibilities of types to which this attribute applies, + when this type is external to the current module. + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies. + + + + + Gets or sets the expression specifying to which members + this instance applies. + + + + + Gets or sets the passing style (by value, out or ref) + of parameters to which this attribute applies. + + + + + Gets or sets the expression specifying to which parameters + this instance applies. + + + + + Gets or sets the visibilities of types to which this attribute applies. + + + + + Gets or sets the expression specifying to which types + this instance applies. + + + + + Attributes of elements to which multicast custom attributes () + apply. + + + + + Specifies that the set of target attributes is inherited from + the parent custom attribute. + + + + + Private (visible inside the current type). + + + + + Protected (visible inside derived types). + + + + + Internal (visible inside the current assembly). + + + + + Internal and protected (visible inside derived types that are defined in the current assembly). + + + + + Internal or protected (visible inside all derived types and in the current assembly). + + + + + Public (visible everywhere). + + + + + Any visibility. + + + + + Static scope. + + + + + Instance scope. + + + + + Any scope ( | ). + + + + + Abstract methods. + + + + + Concrete (non-abstract) methods. + + + + + Any abstraction ( | ). + + + + + Virtual methods. + + + + + Non-virtual methods. + + + + + Any virtuality ( | ). + + + + + Managed code implementation. + + + + + Non-managed code implementation (external or system). + + + + + Any implementation ( | ). + + + + + Literal fields. + + + + + Non-literal fields. + + + + + Any field literality ( | ). + + + + + Input parameters. + + + + + Compiler-generated code (for instance closure types of anonymous method, iterator type, ...). + + + + + User-generated code (anything expected ). + + + + + Any code generation ( | )l + + + + + Output (out in C#) parameters. + + + + + Input/Output (ref in C#) parameters. + + + + + Any kind of parameter passing ( | | ). + + + + + All members. + + + + + Custom attribute that determines the usage of a . + + + + + Initializes a new . + + + + + Initializes a new . + + Kinds of targets that instances of the related + apply to. + + + + Determines whether this attribute can be applied to declaration of external assemblies + (i.e. to other assemblies than the one in which the custom attribute is instantiated). + + + + + Determines whether many instances of the custom attribute are allowed on a single declaration. + + + + + Determines whether instances of the target + should be hidden from the Aspect Browser, in the Visual Studio extension. + + + + + Determines whether the custom attribute in inherited along the lines of inheritance + of the target element. + + + + + Determines whether the custom attribute should be persisted in metadata, so that + it would be available for System.Reflection. + + + + + Gets or sets the attributes of the members (fields or methods) to which + the custom attribute can be applied, when the members are external to + the current module. + + + + + Gets or sets the attributes of the types to which + the custom attribute can be applied, when the type is external to + the current module. If the custom attribute relates to + fields or methods, this property specifies which attributes + of the declaring type are acceptable. + + + + + Gets or sets the attributes of the members (fields or methods) to which + the custom attribute can be applied. + + + + + Gets or sets the attributes of the parameter to which + the custom attribute can be applied. + + + + + Gets or sets the attributes of the types to which + the custom attribute can be applied. If the custom attribute relates to + fields or methods, this property specifies which attributes + of the declaring type are acceptable. + + + + + Gets the kinds of targets that instances of the related + apply to. + + + + + Kind of inheritance of . + + + + + No inheritance. + + + + + The instance is inherited to children of the original element, + but multicasting is not applied to members of children. + + + + + The instance is inherited to children of the original element + and multicasting is applied to members of children. + + + + + Kinds of targets to which multicast custom attributes () + can apply. + + + + + Specifies that the set of target elements is inherited from + the parent custom attribute. + + + + + Class. + + + + + Structure. + + + + + Enumeration. + + + + + Delegate. + + + + + Interface. + + + + + Any type (, , , + or ). + + + + + Field. + + + + + Method (but not constructor). + + + + + Instance constructor. + + + + + Static constructor. + + + + + Property (but not methods inside the property). + + + + + Event (but not methods inside the event). + + + + + Any member (, , , + , + , ). + + + + + Assembly. + + + + + Method or property parameter. + + + + + Method or property return value. + + + + + All element kinds. + + + + + Provides access to the current PostSharp environment (). + + + + + Gets the current PostSharp environment, or null + if the PostSharp Platform is not loaded in the current + context. + + + + + Gets the current PostSharp project. + + + + + Determines whether the PostSharp Platform is currently loaded. + + + + + Provides tracing functionality. An instance of the type + implements a trace sink. + + + + + Initialize a new sink. + + Category of messages. + + + + Enables a trace category known by its object. + + A object. + + + + Enables a trace category known by its name. + + The category name. + + + + Determines whether the current trace sink is enabled. + + + + + Writes a message to the current sink without formatting parameter. + + Message. + + + + Writes a message to the current sink with a single formatting parameter. + + Message formatting string. + The first formatting parameter. + + + + Writes a message to the current sink with two formatting parameters. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + + + + Writes a message to the current sink with three formatting parameters. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + The third formatting parameter. + + + + Writes a message to the current sink with many formatting parameters. + + Message formatting string. + Formatting parameters. + + + + Writes a message to the current sink without parameter, + and issues a line break. + + Message formatting string. + + + + Writes a message to the current sink with a single formatting parameter, + and issues a line break. + + Message formatting string. + The first formatting parameter. + + + + Writes a message to the current sink with two formatting parameters, + and issues a line break. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + + + + Writes a message to the current sink with three formatting parameters, + and issues a line break. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + The third formatting parameter. + + + + Writes a message to the current sink with many formatting parameters, and issues a line break. + + Message formatting string. + Formatting parameters. + + + + Represents a custom element (or section) in the XML project type. + + + + + Gets the full path of the file in which the element is defined. + + + + + Gets the text representation of the materializing the project extension. + + + + + Gets the materializing the project extension. + + + + + Represents an element of a resource section, i.e. a named object deserialized from XML. + + + + + Initializes a new . + + Resource name. + Resource value. + + + + Gets the name of the resource section, i.e. the name of the XML element containing the resource. + + + + + Gets the resource value, i.e. the object that has been constructed by deserializing the XML element. + + + + + Custom attribute that, when applied on another custom attribute (a class derived + from ), means that assemblies with elements + annotated with that custom attribute should be processed by PostSharp. + + + + + Initializes a new . + + Name of the required plug-in (file name without extension). + Name of the required task (should be defined in ). + + + + Determines whether the requirement should apply only to assemblies referencing the declaration to + which the custom attribute is applied. If true, the requirement will not apply to the assembly + where the custom attribute is used. + + + + + Gets the name of the required plug-in (file name without the extension). + + + + + Gets the name of the required task (should be defined in ). + + + + + Custom attribute that, when applied on a type, specifies that all build-time semantics of this type + require reflection wrappers to be passed instead of real reflection objects. + + + + + + + PostSharp.Extensibility.RequireReflectionWrapperAttribute + + + + + + + Types of message severities. + + + + + Debugging information (typically trace). + + + + + Verbose (lowly important information). + + + + + Information. + + + + + Important information. + + + + + Command line. + + + + + Warning. + + + + + Error. + + + + + Fatal error. + + + + + No message. + + + + + Instructs PostSharp that the validation of is done by another component, and should + not be processed by the default component. + + + + + + + PostSharp.Extensibility.SuppressAnnotationValidationAttribute + + + + + + + Represents a variant of family (variant) of the .NET Framework, e.g. , , + or . + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current object represents a null instance. + + + + + Instance of representing MonoAndroid. + + + + + Instance of representing MonoTouch. + + + + + Instance of representing .NET Framework for Windows Store. + + + + + Instance of representing the full .NET Framework. + + + + + Instance of representing .NET Portable Class Library. + + + + + Determines whether two instances are equal. + + A . + A . + + true if and are equal, otherwise false. + + + + Determines whether two instances are different. + + A . + A . + + true if and are different, otherwise false + + + + Instance of representing Silverlight. + + + + + Gets the string identity of the current object. + + + + + Instance of representing Windows Phone (Silverlight). + + + + + Instance of representing Xamarin.iOS. + + + + + Kinds of code references (). + + + + + No code reference. + + + + + Type inheritance. The base type is the ; + the child type is the . + See . + + + + + Member type (field or property type, method return type, or parameter type). + The member type is the . + See . + + + + + Operand of an instruction in a method body. The + is the method. See . + + + + + Instance of a custom attribute on a target declaration. + + + + + Gets the custom attribute. + + + + + Gets the (including given constructor + arguments and named arguments) used to construct + the . + + + + + Gets the declaration on which the custom attribute is defined. + + + + + Custom implementation of a reflection that select + methods based on exact matches using the . + + + + Selects a field from the given set of fields, based on the specified criteria. + A bitwise combination of values. + The set of fields that are candidates for matching. For example, when a object is used by , this parameter specifies the set of fields that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The field value used to locate a matching field. + An instance of that is used to control the coercion of data types, in binder implementations that coerce types. If is null, the for the current thread is used.Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.BindToField(System.Reflection.BindingFlags,System.Reflection.FieldInfo[],System.Object,System.Globalization.CultureInfo) + + + + The matching field. + For the default binder, includes , and contains multiple fields that are equally good matches for . For example, contains a MyClass object that implements the IMyClass interface, and contains a field of type MyClass and a field of type IMyClass. + For the default binder, includes , and contains no fields that can accept . + For the default binder, includes , and is null or an empty array.-or- includes , and is null. + + + Selects a method to invoke from the given set of methods, based on the supplied arguments. + A bitwise combination of values. + The set of methods that are candidates for matching. For example, when a object is used by , this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The arguments that are passed in. The binder can change the order of the arguments in this array; for example, the default binder changes the order of arguments if the parameter is used to specify an order other than positional order. If a binder implementation coerces argument types, the types and values of the arguments can be changed as well. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. The default binder implementation does not use this parameter. + An instance of that is used to control the coercion of data types, in binder implementations that coerce types. If is null, the for the current thread is used. Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions. + The parameter names, if parameter names are to be considered when matching, or null if arguments are to be treated as purely positional. For example, parameter names must be used if arguments are not supplied in positional order. + After the method returns, contains a binder-provided object that keeps track of argument reordering. The binder creates this object, and the binder is the sole consumer of this object. If is not null when BindToMethod returns, you must pass to the method if you want to restore to its original order, for example, so that you can retrieve the values of ref parameters (ByRef parameters in Visual Basic). + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.BindToMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Object[]@,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],System.Object@) + + + + The matching method. + For the default binder, contains multiple methods that are equally good matches for . For example, contains a MyClass object that implements the IMyClass interface, and contains a method that takes MyClass and a method that takes IMyClass. + For the default binder, contains no methods that can accept the arguments supplied in . + For the default binder, is null or an empty array. + + + Changes the type of the given Object to the given Type. + The object to change into a new Type. + The new Type that will become. + An instance of that is used to control the coercion of data types. If is null, the for the current thread is used.Note   For example, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. + An object that contains the given value as the new type. + + + + Singleton instance. + + + + Upon returning from , restores the argument to what it was when it came from BindToMethod. + The actual arguments that are passed in. Both the types and values of the arguments can be changed. + A binder-provided object that keeps track of argument reordering. + + + Selects a method from the given set of methods, based on the argument type. + A bitwise combination of values. + The set of methods that are candidates for matching. For example, when a object is used by , this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The parameter types used to locate a matching method. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.SelectMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Type[],System.Reflection.ParameterModifier[]) + + + + The matching method, if found; otherwise, null. + For the default binder, contains multiple methods that are equally good matches for the parameter types described by . For example, the array in contains a object for MyClass and the array in contains a method that takes a base class of MyClass and a method that takes an interface that MyClass implements. + For the default binder, is null or an empty array.-or-An element of derives from , but is not of type RuntimeType. + + + Selects a property from the given set of properties, based on the specified criteria. + A bitwise combination of values. + The set of properties that are candidates for matching. For example, when a object is used by , this parameter specifies the set of properties that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The return value the matching property must have. + The index types of the property being searched for. Used for index properties such as the indexer for a class. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.SelectProperty(System.Reflection.BindingFlags,System.Reflection.PropertyInfo[],System.Type,System.Type[],System.Reflection.ParameterModifier[]) + + + + The matching property. + For the default binder, contains multiple properties that are equally good matches for and . + For the default binder, is null or an empty array. + + + + Encapsulates a unique identifier of a declaration. The identifier does not contain the kind of declaration. Different declarations of different kinds can have the same identifier. + + + + + Gets a 29-bit of the name of the assembly containing the declaration represented by the current . + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + + Gets the for a given declaration. + + A , , , , or . + A that identifies . + + + + Gets the that represents the declaring type of the declaration represented by the current . + + The that represents the declaring type of the declaration represented by the current . + If the current already represents a type, this method returns the current . + + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current is null. + + + + + Maximum number of the same kind in the same type supported by the class. + + + + + Maximum number of types per assembly supported by the class. + + + + + Gets a number that uniquely identifies the member inside its declaring type, for the given member kind. + + + + + Gets a null instance of the type/ + + + + + Determines whether two instances of the type are equal. + + + + + + + returns + M:PostSharp.Reflection.DeclarationIdentifier.op_Equality(PostSharp.Reflection.DeclarationIdentifier,PostSharp.Reflection.DeclarationIdentifier) + + + + + + + Determines whether two instances of the type are different. + + + + + + + returns + M:PostSharp.Reflection.DeclarationIdentifier.op_Inequality(PostSharp.Reflection.DeclarationIdentifier,PostSharp.Reflection.DeclarationIdentifier) + + + + + + + Gets a number that uniquely identifies the type inside its declaring assembly. + + + + + Defines the semantics of an assembly name. + + + + + Gets the assembly culture name. + + + + + Gets the assembly public key. + + An array of bytes containing the public key, + or null if no public key is specified. + + + + Gets the assembly public key token. + + An array of bytes containing the public key token, + or null if no public key is specified. + + + + Determines whether the current assembly (or assembly reference) is mscorlib. + + + + + Determines whether the reference is retargetable by the CLR, i.e. can be accommodated by + an assembly whose identity does not match the current assembly reference. + + + + + Determines whether the current assembly (or assembly reference) contains a strong name signature. + + + + + Gets the assembly friendly name. + + + + + Gets the processor architecture that the current assembly targets. + + + + + Gets the assembly version. + + + + + Represents a reference between two declarations. + + + + + Gets the declaration referenced by the other. + + + + + Gets the kind of code reference. + + + + + Gets the declaration referencing the other. + + + + + Semantics of service that deserializes metadata objects (i.e. reflection objects) that have + been serialized by . + + + + + Gets the reflection object corresponding to the given index. + + Index returned by + at build time. + The reflection object corresponding to . + + + + Semantics of a service that allows build-time code to serialize references + to metadata objects (i.e. reflection objects) in a way that is compatible with obfuscators. + References are deserialized at run-time using . + + + + + Gets the index of a serialized metadata reference. + + A reflection object. + The index of , to be serialized + and deserialized at runtime with . + + + + Represents a file of source code. + + + + + Document type ( according to Microsoft PDB specification). + + + + + Full path of the file. + + + + + Language ( according to Microsoft PDB specification). + + + + + Language vendor ( according to Microsoft PDB specification). + + + + + Represents a , or + , which all have the semantics of a location (get value, set value). + + + + + Initializes a new from a . + + The field represented by the . + + + + Initializes a new from a . + + The parameter represented by the . + + + + Initializes a new from a . + + The property represented by the . + + + + Gets the declaring type of the underlying field, property, parameter, or return value. + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + Serves as the default hash function. + A hash code for the current object. + + + + Returns the value of the field or property represented by the current object. + + The object whose field or property value will be returned (null if the + field or property is static). + The value of the field or property. + + + + Returns the value of the field or property represented by the current object + with optional index values for indexed properties. + + The object whose field or property value will be returned (null if the + field or property is static). + Optional index values for indexed properties. null for fields or non-index + properties. + The value of the field or property. + + + + Determines whether the underlying field or property is static. + + + + + Gets the location kind (, + , + or + ). + + + + + Gets the type of values that can be stored in the location. + + + + + Gets the name of the underlying field, property, parameter, or return value. + + + + + Determines whether two instances of represent the same element of code. + + A . + A . + + true if and are equal, otherwise false. + + + + Determines whether two instances of represent different elements of code. + + A . + A . + + true if and are different, otherwise false. + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + + Sets the value of the field or property represented by the current object to a given value. + + The object whose field or property value will be changed (null if the + field or property is static). + New value. + + + + Sets the value of the field or property represented by the current object to a given value + with optional index values for indexed properties. + + The object whose field or property value will be changed (null if the + field or property is static). + New value. + Optional index values for indexed properties. null for fields or non-index + properties. + + + + Initializes a new from a + , , or . + + + + + + returns + M:PostSharp.Reflection.LocationInfo.ToLocationInfo(System.Object) + + + + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Enumerates the kinds of code elements that can be encapsulated by a . + + + + + . + + + + + . + + + + + A representing a parameter (not a ). + + + + + A representing a return value. + + + + + Represents a relationship between a type and a member of this type. + A member can be a , , or + . + + + + + Gets the member (, , or + ). + + + + + Gets the member type. + + + + + Represents a relationship between a declaration (, + , or ) + and a method whose instructions (method body) use the declaration. + + + + + Gets the instructions that reference . + + + + + Gets the declaration (, + or ) used by the method. + + + + + Gets the used by the method. If the current + object represents a reference to a + or , this property returns the declaring + type of the method or constructor. + + + + + Gets the method ( or ) + whose body uses the declaration. + + + + + Instructions whose operands can reference a declaration. + + + + + No instruction. + + + + + Get field value. + + + + + Set field value. + + + + + Call to a static or sealed method. + + + + + Call to a virtual method. + + + + + Creation of a new instance (invoke the constructor). + + + + + Get field address. + + + + + Load the metadata token (for instance typeof). + + + + + Load the address of a static or sealed method (delegate instantiation). + + + + + Load the address of a virtual method (delegate instantiation). + + + + + Type casting. + + + + + "Safe" type casting (as or is in C#). + + + + + Get the size of a value type (sizeof in C#). + + + + + Create a new array of a type. + + + + + Specifies how an object should be constructed, i.e. specifies the constructor to be + used, the arguments to be passed to this constructor, and the fields or properties to + be set. + + + + + Initializes a new type-safe from a . + + Constructor. + Arguments passed to the constructor. + + + + Initializes a new type-safe from a + A + + + + Initializes a new by specifying a type name and a list of constructor arguments. + + Name of the object type. + Arguments passed to the constructor. + + + + Initializes a new by specifying a type name and a list of constructor arguments. + + Object type. + Arguments passed to the constructor. + + + + Gets the custom attribute constructor. + + + + + Gets the arguments passed to the custom attribute constructor. + + + + + Gets the collection of named arguments. + + + + + Gets the assembly-qualified type name of the object. + + + + + Provides utility methods to work with the System.Reflection namespace. + + + + + Gets the whose a given field is the backing field from the current type or base types. + + A field. + The representing the property whose is the backing field, or null + if is not the backing field of an automatic property. + + + + Gets the whose a given field is the backing field and specifies whether base types should be considered. + + A field. + + true if the property should be looked for in the base, otherwise false. + The representing the property whose is the backing field, or null + if is not the backing field of an automatic property. + + + + Gets the backing field of a given property. + + A property. + The representing the backing field of , or null if + is not an automatic property. + + + + Gets the kind of state machine (typically , or ) that implements a given method. + + A method. + A value, or if is not implemented by a state machine. + + + + Determines whether a given property is an automatic property. + + A property. + + true if represents an automatic property, otherwise false. + + + + Provides helper methods for work with . + + + + + Determines whether the attribute relationship exists between two assemblies. + + The assembly defining the attribute. + The assembly referenced by the attribute. + + + + returns + M:PostSharp.Reflection.ReflectionHelper.AreInternalsVisibleTo(System.Reflection.Assembly,System.Reflection.Assembly) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + param + typeName + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + param + assemblyName + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + addMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + removeMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + raiseMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + throwOnMissingMember + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + Determines whether a is compiler-generated. + + A . + + true if is compiler-generated, false if it is hand-coded. + + + + Determines whether a is compiler-generated. + + A . + + true if is compiler-generated, false if it is hand-coded. + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + typeFullName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + typeName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + assemblyName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + Set of static methods providing broader access to assembly metadata than + the System.Reflection namespace. These methods are only + available at build time. + + + + + Gets all custom attributes of a given type in the assembly being currently processed. + + + of the custom attribute. + The set of all custom attributes of type + defined in the assembly being currently processed. + + + + Gets all custom attributes of a given type in the assembly being currently processed and specifies + additional options. + + + of the custom attribute. + Any combination of options and + . + The set of all custom attributes of type (or any type derived + from , if the option + is true) defined in the assembly being currently processed. + + + + Gets all custom attributes on a given element of code, including those who have been added indirectly, for + instance through . + + Element of code (, , ...) whose + custom attributes are requested. + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all custom attributes on a given element of code, including those who have been added indirectly, for + instance through and specifies additional options. + + Element of code (, , ...) whose + custom attributes are requested. + + or . + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all custom attributes of a given type on a given element of code, including those who have been added indirectly, for + instance through and specifies additional options. + + Element of code (, , ...) whose + custom attributes are requested. + + or . + Type of the custom attribute. + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all declarations (, + , or ) used + by the body of a given method or constructor. + + A or . + An array of containing one + item for each declaration used by the body of . + + + + Gets all declarations (, + , or ) used + by the body of a given method or constructor and specifies additional options. + + A or . + + or . + An array of containing one + item for each declaration used by the body of . + + + + + Gets the set of types derived from a given class or implementing a given interface. + + A class or interface. + The set of types derived from or implementing . + + + + Gets the set of types derived from a given class or implementing a given interface. + and specifies additional options. + + A class or interface. + Any valid combination of the options , + (partial type match), and + (deep search). + and + cannot be used together. + The set of types derived from or implementing . + + + + Gets all members (, , or + ) of the assembly being processed of a given type. + + Member type. + The set of all members of type in the assembly being processed + + + + Gets all members (, , or + ) of the assembly being processed of a given type and specifies additional options. + + Member type. + Any combination of the options and + (partial type match). + + The set of all members of type in the assembly being processed + + + + Gets the set of methods and constructors whose body references a given (, + , or ). + + The , + , or + whose references are requested. + An array of containing one + item for each method or constructor whose body references . + + + + + Gets the set of methods and constructors whose body references a given (, + , or ) + and specifies whether + reflection wrappers should be used instead of runtime reflection objects. + + The , + , or + whose references are requested. + Any combination of the options + and (partial type match). + An array of containing one + item for each method or constructor whose body references . + + + + + Determines whether a declaration has a custom attribute of a given type, including those who have been added indirectly, for + instance through . + + Element of code (, , ...) whose + custom attributes are requested. + The type of custom attributes. + + true to consider custom attributes derived from , false to consider + only custom attributes strictly of type . + True if has a custom attribute of type , otherwise false. + + + + + + summary + T:PostSharp.Reflection.ReflectionSearchOptions + + + + + + + No option. + + + + + Include relationships referencing a derived type (instead of exactly that type). + + + + + Include relationships referencing a type signature including the given type (instead of only the given type). + + + + + Use reflection wrappers instead of runtime reflection objects. + Reflection wrappers implement standard reflection classes + (, , ...), but do not require the CLR + to load the type. Reflection wrappers should be used only when the CLR is not able to load the type, + for instance because the type is not valid for runtime execution. This happens for instance when the + type has an extern method implemented after compilation by PostSharp. + + + + + Comparer of reflection types () based on content, not reference. + Supports the unbound generic parameters derived from the class. + + + + Determines whether the specified objects are equal. + The first object of type to compare. + The second object of type to compare. + true if the specified objects are equal; otherwise, false. + + + Determines whether the specified objects are equal. + The first object of type to compare. + The second object of type to compare. + true if the specified objects are equal; otherwise, false. + + + Returns a hash code for the specified object. + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + Returns a hash code for the specified object. + The for which a hash code is to be returned. + + + + param + types + M:PostSharp.Reflection.ReflectionTypeComparer.GetHashCode(System.Type[]) + + + + A hash code for the specified object. + The type of is a reference type and is null. + + + + Gets an instance of that does not perform + substitution of generic parameters. + + An instance of . + + + + Gets an instance of that performs + substitution of generic parameters. + + Array of types to be substituted to the + generic method parameters of the left member. + Array of types to be substituted to the + generic type parameters of the left member. + Array of types to be substituted to the + generic method parameters of the right member. + Array of types to be substituted to the + generic type parameters of the right member. + An instance of . + + + + Enumeration of kinds of state machines. + + + + + The method is not implemented by a state machine. + + + + + Iterator method returning an . + + + + + Iterator method returning an . + + + + + Async method. + + + + + Maps a point in IL instructions to location in source code. + + + + + Gets the end column in the source file. + + + + + Gets the end line in the source file. + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Serves as the default hash function. + A hash code for the current object. + + + + Gets a symbol meaning that the associated instructions have no source code. + + + + + Determines whether the current symbol means that the associated + instructions have no source code. + + + + + Determines whether the current symbol is a special, non-standard, defined + by PostSharp and supported by PostSharp Tools for Visual Studio. + + + + + Determines whether two sequence points are equal. + + A . + A . + + true if both sequence points are equal, otherwise false. + + + + Determines whether two sequence points are different. + + A . + A . + + true if both sequence points are different, otherwise false. + + + + Document (file of source code) containing the current sequence point. + + + + + Gets the start column in the source file. + + + + + Gets the start line in the source file. + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Represents a inheritance relationship between two types. + + + + + Gets the base type. If the base type is a generic type, this property contains + a generic type instance. + + + + + Gets the derived type. + + + + + Visibility of types and type members. + + + + + Public. + + + + + Family (protected). + + + + + Assembly (internal). + + + + + Family or assembly (protected internal). + + + + + Family and assembly (no C# equivalent: protected types inside the current assembly). + + + + + Private. + + + + + Classes derived from represent unbound generic arguments. + It is a 'trick' to create unbound generic instances, because C# and System.Reflection + does not make it possible. Use the method to bind the unbound + generic arguments to concrete types. + + + + + Binds unbound generic arguments to concrete types. + + A containing unbound generic arguments + (derived from ). + Array of types to which + the unbound generic type arguments should be bound. + Array of types to which + the unbound generic method parameters should be bound. + A where unbound generic arguments have been replaced + by and . + + + + Classes derived from represent unbound generic method parameters. + + + + + Unbound generic method argument. Reference to the 0-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 1-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 2-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 3-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 4-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 5-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 6-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 7-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 8-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 9-th generic method argument. + + + + + Initializes a new . + + + + + Classes derived from represent unbound generic type parameters. + + + + + Unbound generic type argument. Reference to the 0-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 1-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 2-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 3-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 4-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 5-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 6-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 7-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 8-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 9-th generic type argument. + + + + + Initializes a new . + + + + + Enumeration of address alignments for access to unmanaged memory represented + by , or . + + + + + Default alignment (machine word). + + + + + 1-byte alignment. + + + + + 2-byte alignment. + + + + + 4-byte alignment. + + + + + Expression that takes the address of the operand. Equivalent to the C# operator &. + + + + + Determines whether the returned pointer is a read-only pointer. + + + + + Expression that has two operands, and . + + + + + Gets the left operand. + + + + + Gets the right operand. + + + + + Block containing other blocks or instructions. + + + + + Gets the collection of exception handlers that protect the block. + + + + + Gets the collection of items in the block. + + + + + Gets a string that uniquely identifies the block (inside the current method body) as a possible branching target. + + + + + Gets the collection of local variables defined for the current block. + + + + + Conditional expression, corresponding to the if keyword in C#. + + + + + Gets the condition expression (the return type does not need to be bool. Zero and null values are considered false). + + + + + Gets the expression executed when evaluates to false, zero, or null. + + + + + Gets the expression executed when evaluates to true or a non-null and non-zero vale. + + + + + Expression representing a build-time constant. + + + + + Gets the constant value. + + + + + Expression equivalent to the instruction. + + + + + Gets the alignment of source and destination buffers. + + + + + Gets the destination address. + + + + + Determines whether the buffers can be modified from a different thread. + + + + + Gets the number of bytes to be copied. + + + + + Gets the source address. + + + + + Represents an expression or an instruction. + + + + + Gets the type of the return value of the current expression, + or if the expression does not return anything (i.e. for pure instructions, for instance a goto + or throw instruction). + + + + + Expression that represents a field. + + + + + Gets the field alignment. + + + + + Gets the field. + + + + + Gets the object containing the field, or null if the field is static. + + + + + Determine whether the field is can be written by a different thread than the current one. + + + + + Unconditional branching instruction. + + + + + Instruction block that must receive control. + + + + + Expression equivalent to the instruction. + + + + + Gets the alignment of the buffers. + + + + + Gets the address of the buffer to be initialized. + + + + + Determines whether the buffers can be modified from a different thread. + + + + + Gets the number of bytes to be initialized. + + + + + Expression that represents a local variable. + + + + + Returns an array of all possible assignments of the at this specific point of the program execution. + + List of possible assignments. + + + + Gets the local variable. + + + + + Gets the value of the at this specific point of the program execution, in case this value + can be determined trivially. + + + + + Expression that depends on a metadata declaration. This expression + is used when compiling the typeof, sizeof or default keywords of C#, among others. + + + + + Gets the declaration (, , , ). + + + + + Expression representing a method call. + + + + + Gets the method arguments. + + + + + Gets the type to which the virtual method call is constrained to (see ). + + + + + Gets the instance on which the method is called, or null if the method is static. + + + + + Determines whether the call is a tail call (see ). + + + + + Determines whether the call is a virtual call. + + + + + Gets the called method. + + + + + Expression that represents a C-like pointer to a method. + + + + + Gets the instance on which the method is defined, or null if the method is static. + + + + + Gets the method. + + + + + Expression that returns a new array. + + + + + Gets the type of elements of the array. + + + + + Gets the number of elements in the array. + + + + + Expression that creates a new object by invoking a constructor. + + + + + Gets the arguments passed to the constructor. + + + + + Gets the constructor. + + + + + Expression that represents a method parameter. + + + + + Gets the parameter. + + + + + Sequence of instructions. + + + + + Gets the list of local variables that the current sequence assigns, and the value to which the local variable is assigned when the current sequence + is fully executed. + + + + + Gets the list of sequences that can branch to the current sequence. + + + + + Gets the list of sequences to which the current sequence branch. + + + + + Represents a statement. A statement is the root of an expression tree. + + + + + Expression evaluated by the statement. + + + + + Gets a next sibling of the current expression within . + + + + + Gets a previous sibling of the current expression within . + + + + + Expression that represent a switch (conditional statement with multiple branches). + + + + + Gets the condition expression. + + + + + Gets the list of target blocks. + + + + + Represents an element of the syntax tree representing a method body. + + + + + Gets the parent element in the tree. + + + + + Gets the parent method body. + + + + + Gets the kind of syntax element. + + + + + Represents an exception handler (either catch, finally or filter) attached to a block. + + + + + Gets the type of handled exception, or null if all exceptions are handled. + + + + + Gets the exception filtering block, or null if all exceptions are handled. + + + + + Gets the local variable containing the exception in the . + + + + + Gets the exception handling block. + + + + + Gets the local variable containing the exception in the . + + + + + Expression that represents a local variable. + + + + + Gets the name of the local variable. + + + + + Gets the ordinal of the local variable. + + + + + Gets the type of the local variable. + + + + + Represents the body of a method. + + + + + Gets the method whose body is represented by the current object. + + + + + Gets the root instruction block of the method. + + + + + Service that exposes the method , which allows to decompile + a method and get a AST representation. + + + + + Decompiles a method and gets an AST representation of it. + + The method to decompile. + The required level of abstraction and detail. + AST representing the at the required level of abstraction and detail. + + + + Represents an expression with a single operand. + + + + + Operand of the unary expression. + + + + + Expression that returns the value stored at an address. Equivalent to the C# keyword *. + + + + + Gets the alignment of the value at the address. + + + + + Determines whether if the location at the address is volatile, i.e. if it can be changed + by a different thread than the current one. + + + + + Expression with no operand. + + + + + Represents the assignment of a local variable to an expression. + + + + + Gets the expression to which the local variable is being assigned. + + + + + Gets the local variable being assigned. + + + + + Enumerates the level of abstraction and the level of details produced by the AST decompiler. + + + + + Returns only the block structure (exception handlers). + + + + + Returns the expression tree. + + + + + Enumeration of kinds of syntax elements (). + + + + + Addition (). + + + + + Addition with overflow checking (). + + + + + Bitwise And (). + + + + + Element of an array ( where is the + array and is the index). + + + + + Length of an array (). + + + + + Assignment (). + + + + + Unconditional branch (). + + + + + Local variable expression (). + + + + + Conditional expression (). + + + + + Cast ( where is the destination type). + + + + + Division (). + + + + + Less than (). + + + + + Less than or equal (). + + + + + Modulo (). + + + + + Multiply with overflow checking (). + + + + + Multiply (). + + + + + Greater than (). + + + + + Greater than (). + + + + + Substract (). + + + + + Substract with overflow checking (). + + + + + Parameter (). + + + + + Current object (this keyword in C#, ). + + + + + Referencing operator (& in C#, see ). + + + + + Constant (). + + + + + Equal (). + + + + + Logical negation (). + + + + + Different (). + + + + + Dereferencing operator (* in C#, see ). + + + + + Bitwise Or (). + + + + + Bitwise And (). + + + + + Bitwise shift to left (). + + + + + Bitwise shit to right (). + + + + + Bitwise negation (). + + + + + Safe cast ( where is the destination type). + + + + + Unbox (). + + + + + Throw exception (). + + + + + Field (). + + + + + Box (). + + + + + Create new array (). + + + + + Get value of typed reference (). + + + + + Check that the value is finite (). + + + + + Make typed reference (). + + + + + Get argument list (). + + + + + Get pointer of method (). + + + + + Allocate on local stack (). + + + + + Default value for given type (). + + + + + Copy buffer (). + + + + + Initialize buffer (). + + + + + Load metadata token (). + + + + + Size of type (). + + + + + Get type of typed reference (). + + + + + Convert to integral type with overflow check (). + + + + + Convert to integral type (). + + + + + Method call (). + + + + + Return (). + + + + + Creates new object (). + + + + + Switch (). + + + + + Instruction block (). + + + + + Catch exception handler (). + + + + + Filter exception handler (). + + + + + Finally exception handler (). + + + + + Method body (). + + + + + Local variable definition (). + + + + + Statement (). + + + + + Formats an to a textual representation, for debugging purposes. + + + + + Initializes a new . + + A where the textual representation will be written. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitBinaryExpression(PostSharp.Reflection.Syntax.IBinaryExpression) + + + + + + + Visits an instruction block and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitConditionalExpression(PostSharp.Reflection.Syntax.IConditionalExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitConstantExpression(PostSharp.Reflection.Syntax.IConstantExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitCopyBufferExpression(PostSharp.Reflection.Syntax.ICopyBufferExpression) + + + + + + + Visits an exception handler and, recursively, the and + (if any). + + The exception handler to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitFieldExpression(PostSharp.Reflection.Syntax.IFieldExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitUnaryExpression(PostSharp.Reflection.Syntax.IUnaryExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Abstract implementation of a visitor of method bodies ( and ). + + + + + + + PostSharp.Reflection.Syntax.SyntaxTreeVisitor + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitBinaryExpression(PostSharp.Reflection.Syntax.IBinaryExpression) + + + + + + + Visits an instruction block and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitConditionalExpression(PostSharp.Reflection.Syntax.IConditionalExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitConstantExpression(PostSharp.Reflection.Syntax.IConstantExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitCopyBufferExpression(PostSharp.Reflection.Syntax.ICopyBufferExpression) + + + + + + + Visits an exception handler and, recursively, the and + (if any). + + The exception handler to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitFieldExpression(PostSharp.Reflection.Syntax.IFieldExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits a local variable definition. + + The local variable to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits a method body and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an instruction block and, recursively, all syntax nodes. + + The statement to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits a syntax element and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitUnaryExpression(PostSharp.Reflection.Syntax.IUnaryExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Provides instances of classes implementing the interface. You should not use this class in user code. + + + + + Gets an instance of a given class implementing the interface. + + A type implementing the interface. + An instance of type . + + + + Security token passed to the method of the interface. + + + + + Custom attribute that, when applied to an assembly, points to a type in the assembly implementing . + + + + + Initializes a new . + + A type derived from in the current assembly. This type must be public and have + a default constructor. + + + + Gets the activator type. + + + + + Encapsulates dotted strings such as namespaces and type names, so their + serialization by can be optimized. + + + + + Initializes a new . + + Value. + + + + Determines whether the current is equal to another one. + + Another . + + true if the current equals other, otherwise false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current represents a null string. + + + + + Gets an instance of representing a null string. + + + + + Converts a into a . + + A . + The encapsulated by . + + + + Converts a into a . + + A . + A encapsulating . + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Gets the string encapsulated by the current . + + + + + Exposes a method , which allows to create an instance of a type using the facility. + + + + + Creates an instance of a give type. + + Type of object whose an instance is requested. + A security token. + A new instance of type . + + + + Provides read access to the collection of deserialized arguments. + + + + + Reads a value from the collection, and throws an exception if the value does not exist. + + Argument name. + An optional prefix of , similar to a namespace. + Value type. + The value of the argument named in the given optional . + + + + When deserializing PostSharp aspects, gets the corresponding to the + used at build time. + + + + + Attempts to read a value from the collection, and does not throw an exception if the value does not exist. + + Argument name. + At output, set to the value of the argument named in the given optional . + An optional prefix of , similar to a namespace. + Value type. + + true if the value is defined, otherwise false. + + + + Provides write access to a collection of arguments that need to be serialized. + + + + + When serializing PostSharp access, gets a facility that can be used to serialize metadata (System.Reflection) objects + as MSIL, therefore making them transparent to obfuscation. + + + + + Sets the value of an argument. + + Argument name. + Argument value. The value can be null or must be serializable. + An optional prefix of , similar to a namespace. + + + + Custom attribute that, when applied to a serializable type, specifies that the serializer of this type has + a dependency on another serializer. The custom attribute can be applied at assembly level; it then + applies to all serializable types in this assembly. + + + + + Initializes a new . + + Type of the object to be made serializable. + Serializer type. This type must implement or , + and must have a public default constructor. If is a generic type, if must have the same number + of generic type parameters as , and have a compatible set of constraints. + + + + Gets the type of the object to be made serializable + + + + + Gets the serializer type. + + + + + Interface that can be implemented by serializable classes. + It defines methods and called during serialization. + + + + + Method called after the object has been deserialized. + + + + + Method called before the object is being serialized. + + + + + Defines the semantics of an object serializer. + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Type of the instance to be created. + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Completes the second phase of deserialization by setting fields and other properties. + + The object being deserialized. + Gives access to field values. + + + + Determines whether should be invoked during deserialization. + The value is false if return fully created object, true otherwise. + + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + Gives access to arguments that will be passed to the method during deserialization. + + + + Exposes a method that allows implementations + of the interface to discover serializer types + for each type being serialized. + + + + + Invoked by once for every type that needs to be serialized, + before is invoked. + + Type being serialized. + + + + Defines a method , which creates instances of the interface for + given object types. + + + + + Creates an instance of the interface for a given object type. + + Type of object being serialized or deserialized. + A new instance implementing the interface. + + + + Provides instances of the interface given the object type. + + + + + Gets the instance of + Type of object being serialized or deserialized. If a surrogate type has been specified during serialization, + this parameter is set to the surrogate type during deserialization. + An instance of able to serialize or deserialize , or null + if there is no known serializer factory for this object. + + + + Gets the surrogate type for a given object type. + + Type of the object being serialized. + The surrogate type for , or null (or ) is + does not require a surrogate type. + + + + Gets the next provider in the chain. + + + + + Custom attribute that, when applied to a field of a class annotated with , + specifies that this field should not be serialized. + + + + + + + PostSharp.Serialization.PNonSerializedAttribute + + + + + + + A serializer designed to serialize the internal structure of types with support for cyclic object graphs. + The is very similar in function and design to the , + but is supported on most platforms and does not require full trust. Both formatters have similar usage: + is replaced by and + by . + + + + + Initializes a new . + + A customizing bindings between types and type names, or null to use the default implementation. + A custom implementation of , or null to use the default implementation. + + + + Deserializes a stream. + + A containing a serialized object graph. + The root object of the object graph serialized in . + + + + When deserializing PostSharp aspects, gets the corresponding to the + used at build time. + + + + + When serializing PostSharp access, gets or sets a facility that can be used to serialize metadata (System.Reflection) objects + as MSIL, therefore making them transparent to obfuscation. + + + + + Serializes an object (and the complete graph whose this object is the root) into a . + + The object to serialize. + The stream where needs to be serialized. + + + + Binds types to names and names to types. Used by the . + + + + + Initializes a new instance of the class. + + + + + Gets the name and the assembly name of a given . + + The . + At output, the name of . + At output, the name of . + + + + Gets a given a type name and an assembly name. + + The type name. + The assembly name. + The required . + + + + Exception thrown by the . + + + + + Initializes a new . + + + + + Deserialization constructor. + + + + + + + Initializes a new and specifies the message. + + Message. + + + + Initializes a new and specifies the message and inner exception. + + Message. + Inner exception. + + + + Custom attribute that, when applied to a type, causes PostSharp to generate a serializer for use by the . + + + + + + + PostSharp.Serialization.PSerializableAttribute + + + + + + + Base serializer for all reference types. + + + + + + + PostSharp.Serialization.ReferenceTypeSerializer + + + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Type of the instance to be created. + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Completes the second phase of deserialization by setting fields and other properties. + + The object being deserialized. + Gives access to field values. + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + Gives access to arguments that will be passed to the method during deserialization. + + + + Provides some utility method for the current namespace. + + + + + Checks whether a given can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Checks whether a given , , , , + or can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Checks whether a given can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Custom attribute that, when applied to a type, specifies its serializer for use by the . + + + + + Initializes a new . + + Serializer type. This type must implement or , + and must have a public default constructor. If is a generic type, if must have the same number + of generic type parameters as the target type, and have a compatible set of constraints. + + + + Gets the serializer type. + + + + + Provides instances of the interface for object types that have been previously registered + using . + + + + + Initializes a new . + + The next provider in the chain, or null if there is none. + + + + + Maps an object type to a serializer type (using generic type parameters). + + Type of the serialized object. + Type of the serializer. + + + + Maps an object type to a serializer type. + + Type of the serialized object. + Type of the serializer (must be derived from ). + + + + Gets the instance that supports built-in types. + + + + + Gets the instance of + Type of object being serialized or deserialized. If a surrogate type has been specified during serialization, + this parameter is set to the surrogate type during deserialization. + An instance of able to serialize or deserialize , or null + if there is no known serializer factory for this object. + + + + Gets the surrogate type for a given object type. + + Type of the object being serialized. + The surrogate type for , or null (or ) is + does not require a surrogate type. + + + + Forbids further changes in the current . + + + + + Gets the next provider in the chain. + + + + + Base serializer for all value types. + + + + + typeparam + T + T:PostSharp.Serialization.ValueTypeSerializer`1 + + + + + + + + + PostSharp.Serialization.ValueTypeSerializer`1 + + + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + + + \ No newline at end of file diff --git a/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.dll b/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.dll new file mode 100644 index 0000000..afb80c1 Binary files /dev/null and b/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.dll differ diff --git a/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.xml b/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.xml new file mode 100644 index 0000000..a412d76 --- /dev/null +++ b/packages/PostSharp.4.3.25/lib/portable-net4+sl5+netcore45+wpa81+wp8/PostSharp.xml @@ -0,0 +1,11741 @@ + + + + PostSharp + + + + + Instructs PostSharp to ignore warnings and information messages. Errors cannot be ignored. + + + + + Creates a new instance of . + + Identifier of the ignored warning. + + + + Gets the identifier of the ignored warning. + + + + + Gets or set the reason (a human-readable text) why the warning must be ignored. + + + + + Represents the location of a message, which means, for the end-user, a line in a file of source code. + From the aspect developer, the location can be known as an object representing an element of code + (for instance a or ). Such implicit locations are resolved + by PostSharp to a file and line number. + + + + + Element of code (reflection object or Declaration) from which the location must be resolved. + + + + + Gets the ending column in the file that caused the + message. + + + + + Gets the ending line in the file that caused the message. + + + + + Builds a explicitly by specifying a filename, when the + + File name. + A . + + + + Builds a explicitly by specifying a filename, line, and column. + + File name. + Line number. + Column number. + A . + + + + Builds a explicitly by specifying a filename, line, and column. + + File name. + Starting line number. + Starting column number. + Ending line number. + Ending column number. + A . + + + + Gets the name of the file that caused the message. + + + + + Builds a from a . + + A . + A . + + + + Builds a from a . + + A . + A corresponding to . + + + + Builds a from an . + + An . + A . + + + + Builds a from an object representing an + element of code (, , , + , , , , , + or, if + you are using PostSharp SDK, any Declaration). + + an object representing an + element of code (, , , + , , , , + , or, if you are using PostSharp SDK, any Declaration. + A representing . + + + + Builds a from an . + + An ( or its wrapper). + A . + + + + Builds a from a (, + , , , + , ). + + An element of code (, + , , , + , ). + A . + + + + Builds a from a . + + A . + A . + + + + Gets the starting column in the file that caused the message. + + + + + Gets the starting line in the file that caused the message. + + + + + Represents an unknown or indeterminate location of the error message. + + + + + Provides some methods that are transformed during post-compilation. + + + + + At post-compile time, casts an instance of a type into another. + A post-compile time error is reported if the source type cannot be + assigned to the target type. + + Instance to be casted. + Source type. + Target type. + The object casted as . + + + + When used to retrieve the value of a field, forces the compiler to retrieve a copy + of the field value instead of an address to this field. This allows to call + instance methods of value-type fields without loading the field address. + + Value. + Type of the value to retrieve (this type parameter can generally be omitted). + + , exactly. + + + + Determines whether the calling program has been transformed by PostSharp. + + + + + Base class for arguments of all advices. + + + + + Initializes a new . + + The instance related to the advice invocation, or + null if the advice is associated to a static element of code. + + + + Gets the of the declaration to which the + advice has been applied. + + + + + Gets or sets the object instance on which the method is being executed. + + + + + Encapsulation of method arguments. + + + + + Returns a shallow copy of the current object. + + A shallow copy of the current object. + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + + + + Gets the number of arguments encapsulated by the current object. + + + + + Creates a weakly-typed object representing any number of arguments. + + + + + + returns + M:PostSharp.Aspects.Arguments.Create(System.Object[]) + + + + + + + Creates a strongly-typed object representing 1 argument. + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``1(``0) + + + + + + + Creates a strongly-typed object representing 2 arguments. + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``2(``0,``1) + + + + + + + Creates a strongly-typed object representing 3 arguments. + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``3(``0,``1,``2) + + + + + + + Creates a strongly-typed object representing 4 arguments. + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``4(``0,``1,``2,``3) + + + + + + + Creates a strongly-typed object representing 5 arguments. + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``5(``0,``1,``2,``3,``4) + + + + + + + Creates a strongly-typed object representing 6 arguments. + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``6(``0,``1,``2,``3,``4,``5) + + + + + + + Creates a strongly-typed object representing 7 arguments. + + + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``7(``0,``1,``2,``3,``4,``5,``6) + + + + + + + Creates a strongly-typed object representing 8 arguments. + + + + + + + + + + + + + + + + + + + + + returns + M:PostSharp.Aspects.Arguments.Create``8(``0,``1,``2,``3,``4,``5,``6,``7) + + + + + + + Empty list of . + + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + + Gets or sets the value of an argument. + + Argument index. + The argument value. + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Converts the current argument list into an . + + An whose elements are equal to the values encapsulated by the current . + + + + Base class for all aspects that are declared using multicast custom attributes (). + + + + + + + PostSharp.Aspects.Aspect + + + + + + + Gets or sets the weaving priority of the aspect. + + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked at build tome to get the imperative configuration of the current . + + Code element (, , + , , , , + , or ) to which the current + has been applied. + + An representing the imperative configuration + of the current . + + + + Gets or sets the of the serializer (a type derived + from ) used to serialize the aspect instance + at build time and deserialize it at runtime. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Custom attribute that, when applied to an aspect class, specifies a human-readable description of the aspect + that can be displayed in PostSharp Tools for Visual Studio. + + + + + Initializes a new instance of the class. + + A human-readable description of the aspect class to which + the custom attribute is applied. + + + + Gets a human-readable description of the aspect class to which + the custom attribute is applied. + + + + + Reserved for future usage. + + + + + + + PostSharp.Aspects.AspectInfo + + + + + + + Completely specifies an aspect instance, including its target code element. An + contains either the aspect instance itself ( property), either information allowing to construct the aspect + () and configure the weaver (). + + + + + Initializes a new from a runtime aspect instance (). + + Code element (, , + , , , , + , or ) to which the current + is applied. + The aspect runtime instance. + + + + Initializes a new from a runtime aspect instance () + and its . + + Code element (, , + , , , , + , or ) to which the current + is applied. + The aspect runtime instance. + The aspect configuration (the type of this parameter should be equal to the + type configuration objects expected by the concrete ). + + + + Initializes a new from + + Code element (, , + , , , , + , or ) to which the current + is applied. + An instructing how the aspect instance + should be constructed. + An optional configuration object whose type corresponds to + the aspect type. + + + + Determines whether the should be represented as a stand-alone instance + in PostSharp Tools for Visual Studio. If false, the current + will be not be represented as a standalone node, and its advices will be merged with the ones provided + by the parent aspect (implementing ). The default value is false. + + + + + Gets the code element (, , + , , , , + , or ) to which the current + is applied. + + + + + Completely specifies an aspect instance (but not its target). An either the aspect instance itself + ( property), either information allowing to construct the aspect () and configure the weaver (). + + + + + Initializes a new when one cannot provide an aspect instance, + i.e. from an and a . + + Aspect construction. + Aspect configuration. + + + + Gets the aspect instance. + + + + + Gets the assembly-qualified type name of the aspect. + + + + + Gets the aspect configuration. + + + + + Gets the aspect construction. + + + + + Gets the type name of the aspect. + + + + + Utility methods for PostSharp.Aspects. + + + + + + + PostSharp.Aspects.AspectUtilities + + + + + + + Gets the of the calling instance. This method must be + invoked from an instance method (not a static method) of a type that has been enhanced + by an aspect. + + The of the calling instance. + + + + Initializes the all the aspects of the calling instance. This method must be + invoked from an instance method (not a static method) of a type that has been enhanced + by an aspect. + + + + + Base class for all aspects applied on assemblies. + + + + + + + PostSharp.Aspects.AssemblyLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Assembly to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Assembly on which the current aspect is applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Assembly to which the current aspect has been applied. + + + + Aspect that, when applied on a type, introduces one or many new interfaces + into that type. + + + + + + + PostSharp.Aspects.CompositionAspect + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces returned by + is already implemented by the type to which the current aspect is applied. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked at runtime, during the initialization of instances of the target type, + to create the composed object. + + + + + param + args + M:PostSharp.Aspects.CompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs) + + + + The composed object. This interface should implement the interfaces specified + by the method. + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface returned by the method. + + + + + Gets the array of interfaces that should be introduced publicly into + the target type of the current aspect. + + + to which the current aspect is applied. + The array of interfaces that should be introduced publicly into , or null if no interface should + be introduced publicly. + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces returned by the method + is already implemented by the type to which the current aspect is applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Type to which the current aspect has been applied. + + + + System type used in the implementation of the . Do not use in user code. + + + + + Creates a new instance of the type with a depth level that is one more than the current one. + + A new , incremented of one from the current . + + + + Determines whether the current depth is zero. + + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Gets a instance representing zero. + + + + + Aspect that, when applied to a target, adds a custom attribute to this target. + + + + + Initializes a new by specifying an . + + Construction of the custom attribute to be added to the target. + + + + Initializes a new by specifying a + . + + Construction of the custom attribute to be added to the target. + + + + Gets the construction of the custom attribute that must be applied to the target of this aspect. + + + + + Arguments of handlers of aspects of the type . + + + + + Adds a handler to the event by invoking the Add semantic of the next node in the chain of invocation. + + The handler to add to the event. + + + + Gets the delegate arguments. + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Gets the event to which the current aspect has been applied. + + + + + Gets the delegate being added, removed, or invoked. + + + + + Invokes a handler by calling the Invoke semantic of the next node in the chain of invocation. + + Handler to be invoked. + Arguments passed to the handler. + Return value of the handler. + + + + Proceeds with adding the to the event to which the current aspect. + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Proceeds with invoking the with the arguments specified in the property. + The delegate may change the and set the . + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Proceeds with removing the from the event to which the current aspect. + This method invokes the next handler in chain. + It is typically invoked from the implementation of . + + + + + Removes a handler from the event by invoking the Remove semantic of the next node in the chain of invocation. + + Handler to be removed. + + + + Gets the return value of the delegate. + + + + + Aspect that, when applied on an event, intercepts invocations of its semantics Add (), + Remove () and Invoke (). + + + + + + + PostSharp.Aspects.EventInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the Add semantic of the event to which the current aspect is applied, + i.e. when a new delegate is added to this event. + + Handler arguments. + + + + Method invoked when the event to which the current aspect is applied is fired, for each delegate + of this event, and instead of invoking this delegate. + + Handler arguments. + + + + Method invoked instead of the Remove semantic of the event to which the current aspect is applied, + i.e. when a delegate is removed from this event. + + Handler arguments. + + + + Base class for all aspects applied on events. + + + + + + + PostSharp.Aspects.EventLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Event to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Event to which the aspect has been applied + + true if the aspect was applied to an acceptable event, otherwise + false. + + + + Initializes the current aspect. + + Event to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Event to which the current aspect has been applied. + + + + Base class for all aspects applied on fields. + + + + + + + PostSharp.Aspects.FieldLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Field to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Field to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Method invoked at runtime before any other method of the aspect is invoked. + + Field on which this instance is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Field to which the current aspect has been applied. + + + + Enumerates the possible behaviors of the calling method after the calling method has returned. + + + + + Default flow behavior for the current method. For , and , the fault flow is + , for it is . + + + + + Continue normally. In an advice, the behavior does not rethrow + the exception, but continues the normal execution flow after the block protected by the advise. + If there is another aspect before the current aspect on the current method, + the behavior calls the + method of the other aspect. + + + + + The current exception will be rethrown. Available only for . + + + + + Return immediately from the current method. Available only for and + . Note that you may want to set the + property, otherwise you may get a . If there is another + aspect before the current aspect on the current method, + the behavior skips the + method of the other aspect. However, the method of the other aspect + will be invoked. + + + + + Throws the exception contained in the property. Available only for . + + + + + Yields a value or awaits for an awaiter. Available only for iterators and async methods with the + and advices. + + + + + Base interface for run-time semantics of all aspects. + + + + + Compile-time semantics of . + + + + + Method invoked at build time to get the imperative configuration of the current . + + Code element (, , + , , , , + , or ) to which the current aspect has been applied. + + An representing the imperative configuration + of the current . + + + + Represents an instance of an aspect applied to a declaration. + + + + + Gets the aspect instance. + + + + + Gets the aspect configuration. + + + + + Gets the aspect construction. + + + + + Gets the type of the aspect. + + + + + Interface that, when implemented by an aspect class, allows aspect instances + to provide other aspects to the weaver. + + + + + Provides new aspects. + + Code element (, , + , , , , + , or ) to which the current aspect has been applied. + + A set of aspect instances. + + + + Service that allows to determine which aspects have been applied to a given declaration, whether declaratively through custom attributes or , + or programmatically using . + + + + + Event invoked after all the aspects in the current project have been discovered and initialized. + + + + + Gets the list of aspect instances on a given declaration. + + The declaration (in the current assembly) for which the list of aspect instances is required. + The list of aspect instances applied on . + + + + Determines whether an aspect of a given type has been applied to a given declaration. + + The declaration on which the presence of the aspect must be checked. + The type of aspect. + + true if an aspect of type has been applied to , otherwise false. + + + + Runtime semantics of aspects applied at assembly level. + + + + + Build-time semantics of aspects applied at assembly level. + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Assembly to which the current aspect is applied + Reserved for future usage. + + + + Defines the semantics of aspects that require to be notified after + a target object is cloned using . + + + + + Method called after the an object enhanced by the current aspect has been + cloned using . The this + parameter refers to the new aspect instance in the cloned object. + + Aspect instance corresponding to the current + aspect instance in the cloned target object. + + + + Interface exposing the implementation of another interface introduced + by a . + + Interface whose implementation is expose. + + + + Gets the object implementing the interface + on behalf of the current instance. + + Credentials provided by the current instance. + The object implementing the interface + on behalf of the current instance. + + + + + Defines the semantics of an aspect that, when applied on a type, introduce one or many new interfaces + into that type, and let these interfaces be implemented by an object created + at runtime. + + + + + Method invoked at runtime, during the initialization of instances of the target type, + to create the composed object. + + + + + param + args + M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs) + + + + The composed object. This interface should implement the interfaces specified + by the and + collections. + + + + Semantics of an aspect that, when applied to a target, adds a custom attribute to this target. + + + + + Interface through which an event-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Invoke the Add semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be added to the event. + + + + Invoke the Invoke semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be removed from the event. + Arguments with which the should be invoked. + The value returned by the handler. + + + + Invoke the Remove semantic on the next node in the chain of invocation. + + Target instance on which the event is defined (null if the event is static). + Handler to be removed from the event. + + + + Runtime semantics of an aspect that, when applied on an event, intercepts invocations of its semantics Add (), + Remove () and Invoke () semantics. + + + + + Method invoked instead of the Add semantic of the event to which the current aspect is applied, + i.e. when a new delegate is added to this event. + + Handler arguments. + + + + Method invoked when the event to which the current aspect is applied is fired, for each delegate + of this event, and instead of invoking this delegate. + + Handler arguments. + + + + Method invoked instead of the Remove semantic of the event to which the current aspect is applied, + i.e. when a delegate is removed from this event. + + Handler arguments. + + + + Runtime semantics of aspects that can be applied on events. + + + + + Initializes the current aspect. + + Event to which the current aspect is applied. + + + + Build-time semantics of aspects that can be applied on events. + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Event to which the current aspect is applied + Reserved for future usage. + + + + Run-time semantics of aspects applied to fields. + + + + + Method invoked at runtime before any other method of the aspect is invoked. + + Field on which this instance is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Field to which the current aspect is applied + Reserved for future usage. + + + + Runtime semantics of aspects that have the same lifetime as instance of types + to which their are applied (or instance of the declaring type of members to which they are applied). + + + + + Creates a new instance of the aspect based on the current instance, serving as a prototype. + + Aspect arguments. + A new instance of the aspect, typically a clone of the current prototype instance. + + + + Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports) + have completed. + + + + + Interface through which a field- or property-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Gets the of the declaration that the binding represents. + + + + + Provides a mechanism to execute a strongly-typed action that depends on the type of the current location. + + Action. + Payload. + Type of the payload passed to the parameter. + + + + Invokes the Get semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + The value stored at the location. + + + + Gets metadata information about the field or property represented by the current binding. + + + + + Gets the type of the field or property. + + + + + Invokes the Set semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + New value to be stored at the location. + + + + A strongly-typed variant for . + + + + + + Invokes the Get semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + The value stored at the location. + + + + Invokes the Set semantic on the next node in the chain of invocation. + + Target instance from which the field or property should be retrieved (null if the field or property is static). + Index arguments, if the location is an indexer property. + New value to be stored at the location. + + + + Exposes an method invoked by the method, + which allows to execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Type of the payload of the method. + + + + Method invoked by the method. + + The typed . + Payload. + Type of the value of the object. + + + + An interface for . + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Executes a delegate for the current . This method allows to + execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Class (typically a singleton) that contains the generic method + that will be executed with the right method generic argument. + An argument being passed to the method of the + parameter. + Type of the payload. + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Gets the current index arguments (in case of a property with parameters). + + + + + Gets or sets the object instance on which the method is being executed. + + + + + Gets the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the full name (including the full name of the declaring type) of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the name of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Invokes the Get Location Value semantic on the next node in the chain of invocation and stores the location value in the property. + + + + + Invokes the Set Location Value semantic on the next node in the chain of invocation and stores the value of the property into + the location. + + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + A strongly-typed specialization of the interface. + + Type of the location value. + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + Exposes an method invoked by the method, + which allows to execute strongly-typed operations and avoid boxing required by the weakly typed interface. + + Type of the payload of the method. + + + + Method invoked by the method. + + The typed . + Payload passed to the method. + Type of the value of the object. + + + + Runtime semantics of an aspect that, when applied on a location (field or property), intercepts invocations of + the Get () and Set () semantics. + + + + + Method invoked instead of the Get semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is retrieved. + + Advice arguments. + + + + Method invoked instead of the Set semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is changed. + + Advice arguments. + + + + Runtime semantics of aspects defined on a field, property, or parameter. + + + + + Initializes the current aspect. + + Location to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Location to which the current aspect is applied + Reserved for future usage. + + + + Ancestor of . + + + + + Runtime semantics of an aspect that, when applied on a location (field, property, or parameter), + validates the value assigned to this location using method , and throws + the exception returned by this method if any. + + Type of values validated by the current aspect. + + + + Validates the value being assigned to the location to which the current aspect has been applied. + + Value being applied to the location. + Name of the location. + Location kind (, , or + ). + + The to be thrown, or null if no exception needs to be thrown. + + + + Semantics of an aspect that, when applied to an assembly, adds a managed resource to this assembly. + + + + + Interface through which a method-level aspect or advice can + invoke the next node in the chain of invocation. + + + + + Invokes the next node in the chain of invocation. + + Target instance on which the method should be invoked (null if the method is static). + Method arguments. + Return value of the method. + + + + Runtime semantics of an aspect that, when applied on a method, intercepts invocations of this method. + + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Runtime semantics of aspects applied to methods. + + + + + Initializes the current aspect. + + Method to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Method to which the current aspect is applied + Reserved for future usage. + + + + Credentials that give access to 'protected' semantics. + + + + + Throws an exception if given credentials are not equal + to the current one. + + Other credentials. + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Creates a new . + + A new . + + + + Gets a null (or empty) / + + + + + Determines whether two are equal. + + An object. + An object. + + true if equals , + otherwise false. + + + + Determines whether two are different. + + An object. + An object. + + true if is different than , + otherwise false. + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Base class for aspects applied on types, but having the same lifetime as + instances of the type to which they are applied. + + + + + + + PostSharp.Aspects.InstanceLevelAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Creates a new instance of the aspect based on the current instance, serving as a prototype. + + Aspect arguments. + A new instance of the aspect, typically a clone of the current prototype instance. + + + + Gets the object to which the current aspect has been applied. + + + + + Method called after the an object enhanced by the current aspect has been + cloned using . The this + parameter refers to the new aspect instance in the cloned object. + + Aspect instance corresponding to the current + aspect instance in the cloned target object. + + + + Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports) + have completed. + + + + + Runtime semantics of an aspect that, when applied on a method, + defines an exception handler around the whole method body + and let the implementation of this interface handle the exception. + + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception (i.e., in a catch block). + + Advice arguments. + + + + Runtime semantics of . + + + + + Method executed before the body of methods to which this aspect is applied. + + Event arguments specifying which method + is being executed, which are its arguments, and how should the execution continue + after the execution of . + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + even when the method exists with an exception (this method is invoked from + the finally block). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + but only when the method successfully returns (i.e. when no exception flies out + the method.). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Extends the interface with two advises + to be applied on state machines. + + + + + Method executed when a state machine resumes execution after an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine yields, as the result of an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. In iterator methods, the + property gives access to the operand of the yield return statement. + + + + Gives access to a 'protected' interface, typically introduced + by a or a + Exposed interface. + + + + Gets a protected interface. + + Credentials of the current instance. + The implementation of the interface . + + + + Run-time semantics of aspects applied to types. + + + + + Initializes the current aspect. + + Type to which the current aspect is applied. + + + + Compile-time semantics of . + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Type to which the current aspect is applied + Reserved for future usage. + + + + Custom attribute that, when applied to an aspect class, specifies how many manual lines of code + are avoided every time the aspect is being used. + + + + + Initializes a new . + + Number of lines of code saved every time the aspect is applied to a target class. + + + + Gets the number of lines of code saved every time the aspect is applied to a target class. + + + + + Extension methods for the interface. + + + + + Gets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is evaluated, or null if the location is static. + The field or property value. + + + + Gets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is evaluated, or null if the indexer is static. + The arguments of the indexer. + The indexer value. + + + + Gets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is evaluated, or null if the location is static. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.GetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object) + + + + The field or property value. + + + + Gets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is evaluated, or null if the indexer is static. + The arguments of the indexer. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.GetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,PostSharp.Aspects.Arguments) + + + + The indexer value. + + + + Sets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is set, or null if the indexer is static. + The arguments of the indexer. + The new value. + The indexer value. + + + + Sets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is set, or null if the location is static. + The new value assigned to the field or property. + The field or property value. + + + + Sets the value of an indexer (property with arguments). + + The binding for the indexer. + The instance for which the indexer is set, or null if the indexer is static. + The arguments of the indexer. + The new value. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.SetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,PostSharp.Aspects.Arguments,``0) + + + + The indexer value. + + + + Sets the value of a field or property. + + The binding for the field or property. + The instance for which the field or property is set, or null if the location is static. + The new value assigned to the field or property. + + + + typeparam + T + M:PostSharp.Aspects.LocationBindingExtensions.SetValue``1(PostSharp.Aspects.ILocationBinding{``0},System.Object,``0) + + + + The field or property value. + + + + Arguments of advices of aspect type . + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Executes a delegate for the current . This method allows to + + + + + + + + Retrieves the current value of the location without overwriting the property. + + The current value of the location, as returned by the next node in the chain of invocation (see ). + + + + Gets the current index arguments (in case of a property with parameters). + + + + + Gets the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the full name (including the full name of the declaring type) of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Gets the name of the location (field, property or parameter) related to the aspect or advice being executed. + + + + + Invokes the Get Location Value semantic on the next node in the chain of invocation and stores the location value in the property. + + + + + Invokes the Set Location Value semantic on the next node in the chain of invocation and stores the value of the property into + the location. + + + + + Sets the value of the location without overwriting the property. + + The value to be passed to the next node in the chain of invocation (see ). + + + + Gets or sets the location value. + + + + + Aspect that, when applied on a location (field or property), intercepts invocations of + the Get () and Set () semantics. + + + + + + + PostSharp.Aspects.LocationInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the Get semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is retrieved. + + Advice arguments. + + + + Method invoked instead of the Set semantic of the field or property to which the current aspect is applied, + i.e. when the value of this field or property is changed. + + Advice arguments. + + + + Base class for aspects defined in fields, properties, or parameters. + + + + + + + PostSharp.Aspects.LocationLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Location to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Location to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Initializes the current aspect. + + Location to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Location to which the current aspect has been applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Enumerates the possible contexts in which the location validation advices can be invoked. + + + + + The value is being validated on method entry. + + + + + The value is being validated just before the method successfully returns. + + + + + Aspect that, when applied to an assembly, adds a custom attribute to this assembly. + + + + + Initializes a new . + + Name of the managed resource. + Content of the managed resource. + + + + Gets the content of the managed resource. + + + + + Gets the name of the managed resource. + + + + + Arguments of advices of aspects of type and + + + + Gets the arguments with which the method has been invoked. + + + + + Gets the exception currently flying. + + + + + Determines the control flow of the target method once the advice is exited. + + + + + Gets the method being executed. + + + + + User-defined state information whose lifetime is linked to the + current method execution. Aspects derived from + should use this property to save state information between + different events (, + and ). + + + + + Gets or sets the method return value. + + + + + Gets or sets the value yielded by the iterator method. + + + + + Aspect that, when applied on an abstract or extern method, creates an implementation for this method. + + + + + + + PostSharp.Aspects.MethodImplementationAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Arguments of advices of aspect type . + + + + + Gets the list of arguments with which the method has been invoked. + + + + + Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method. + + + + + Invokes the method that has been intercepted by calling the next node in the chain of invocation with given arguments, + without affecting the property . + + Arguments passed to the intercepted method. + Value returned by the intercepted method. + + + + Gets the method being executed. + + + + + Proceeds with invocation of the method that has been intercepted by calling the next node in the chain of invocation, + passing the current to that method and + storing its return value into the property . + + + + + Gets or sets the return value of the method. + + + + + Aspect that, when applied on a method, intercepts invocations of this method. + + + + + + + PostSharp.Aspects.MethodInterceptionAspect + + + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method invoked instead of the method to which the aspect has been applied. + + Advice arguments. + + + + Base class for all aspects applied on methods. + + + + + + + PostSharp.Aspects.MethodLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Method to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Method to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Initializes the current aspect. + + Method to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Custom attribute that, when added to a static method, causes the method to be executed immediately + after the assembly is loaded by the CLR. The target method must be public, parameterless, void, and non-generic. + + + + + Initializes a new . + + Order in which the will be executed if the + current project contains several initializers. Initializers with smaller values of the + parameter get invoked first. + + + + Gets the order in which the will be executed if the + current project contains several initializers. Initializers with smaller values of the + property get invoked first. + + + + + Aspect that, when applied to a method, defines an exception + handler around the whole method and calls a custom method in this exception + handler. + + + + + + + PostSharp.Aspects.OnExceptionAspect + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Gets the type of exception handled by this aspect. + + Method to which the current aspect is applied. + The type (derived from ) of exceptions handled + by this aspect. + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception (i.e., in a catch block). + + Advice arguments. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Aspect that, when applied to a method defined in the current assembly, inserts a piece + of code before and after the body of these methods. + + + + + + + PostSharp.Aspects.OnMethodBoundaryAspect + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Method invoked at build time to create a concrete instance specifically + for the current type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Method executed before the body of methods to which this aspect is applied. + + Event arguments specifying which method + is being executed, which are its arguments, and how should the execution continue + after the execution of . + + + + Method executed after the body of methods to which this aspect is applied, + in case that the method resulted with an exception. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + even when the method exists with an exception (this method is invoked from + the finally block). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine resumes execution after an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed after the body of methods to which this aspect is applied, + but only when the method successfully returns (i.e. when no exception flies out + the method.). + + Event arguments specifying which method + is being executed and which are its arguments. + + + + Method executed when a state machine yields, as the result of an yield return or + await statement. + + Event arguments specifying which method + is being executed and which are its arguments. In iterator methods, the + property gives access to the operand of the yield return statement. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Method to which the current aspect has been applied. + + + + Wraps a or a type name. + + + + + Wraps a into a . + + A . + A wrapping . + + + + Wraps a type name into a . + + The type name. + A wrapping the type name. + + + + Wraps an array of type names into an array of . + + An array of type names. + An array of wrapping . + + + + Wraps an array of into an array of . + + An array of . + An array of wrapping . + + + + Converts a into a . + + + + + returns + M:PostSharp.Aspects.TypeIdentity.ToType + + + + + + + Gets the wrapped , or null it the property is set. + + + + + Gets the wrapped type name, or null it the property is set. + + + + + Base class for all aspects applied on types. + + + + + + + PostSharp.Aspects.TypeLevelAspect + + + + + + + Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked + before any other build-time method. + + Type to which the current aspect is applied + Reserved for future usage. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Code element (, , + , , , , + , or ) to which the aspect has been applied. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Method invoked at build time to ensure that the aspect has been applied to the right target. + + Type to which the aspect has been applied + + true if the aspect was applied to an acceptable field, otherwise + false. + + + + Initializes the current aspect. + + Type to which the current aspect is applied. + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Code element (, , + , , , , + , or ) to which the current + has been applied. + + + + + Method invoked at build time to set up an object according to the current + instance and a specified target element of the current aspect. + + The instance previously returned by the + method. + Type to which the current aspect has been applied. + + + + Base class for all custom attributes representing an advice. + + + + + + + PostSharp.Aspects.Advices.Advice + + + + + + + A human-readable description of the current advice. + + + + + Reduction in the code lines count achieved by applying the advice instance to one code element. + + + + + Base class for advice instances, which can be provided dynamically by the aspect thanks to the interface. + + + + + + + PostSharp.Aspects.Advices.AdviceInstance + + + + + + + A human-readable description of the current advice instance. + + + + + The number of lines of hand-written code avoided by this specific . + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + Enumerates the reasons why the target method of the has been invoked. + + + + + None. + + + + + Manual call of the InitializeAspects method. + + + + + Call from the instance constructor. + + + + + Call from MemberwiseClone. + + + + + Call during deserialization. + + + + + Custom attribute that, when applied on an aspect class, requires custom + attributes present on the aspect class to be copied to the target of this class. + When applied on an introduced member (see ), + this custom attribute requires custom attributes present on the aspect member + to be copied to the introduced member. + + + + + Requires custom attributes present on the aspect class or aspect class member + to be copied to the aspect target or to the introduced member, respectively. + + Base type of custom attributes to be copied. + + + + Requires custom attributes present on the aspect class or aspect class member + to be copied to the aspect target or to the introduced member, respectively. + + Base types of custom attributes to be copied. + + + + Determines what should happen when a custom attribute of the same + type is already present on the target declaration. + + + + + Gets the list of custom attribute types to be copied. + + + + + Behavior of when a custom + attribute of the same type already exists on the target declaration. + + + + + Default (). + + + + + Emits an error message. + + + + + Silently ignore this custom attribute (does not copy it, without + error message). + + + + + Adds a new copy (possibly duplicate) of the custom attribute. + + + + + Merges the existing custom attribute with the template custom attribute + by adding properties and fields. If the existing custom attribute defines + the same properties and fields as the template custom attribute, + they are not overridden. + + + + + Merges the existing custom attribute with the template custom attribute + by adding and replacing properties and fields. If the existing custom + attribute defines the same properties and fields as the template custom + attribute, they are replaced by the values defined in the template + custom attribute. + + + + + Exposes the semantics of an event for use with the aspect extension. + + Handler type (derived from ). + + + + Gets a delegate enabling to invoke the add accessor + of the imported event. + + + + + Gets a delegate enabling to invoke the remove accessor + of the imported event. + + + + + Defines the signature of methods implementing the + and semantics of an event. + + Handler. + Handler type (derived from ). + + + + Base class for all advices that are possibly composed of + multiple advices that can be grouped together using the + property. + + + + + + + PostSharp.Aspects.Advices.GroupingAdvice + + + + + + + Name of the master advice method. If this property is not set, + the current method is itself the master of the group. Only + master methods can define selectors () + and dependencies (). + + + + + Interface that allows an aspect to provide aspects dynamically, instead of declaratively using custom attributes. + + + + + Provides an enumeration of advices, represented as instances of the class, for the current aspect instance. + + Element of code to which the current aspect has been applied. + A collection of advices to be added to the current aspect instance. + + + + Represents an advice that imports a field or property (represented by a ) of the target class + into a field of the aspect class. This class is the imperative equivalent of the declarative advise. + + + + + Initializes a new instance of the class and specifies which field or property should be imported by giving its reflection representation. + + A field of the aspect class to which should be bound at runtime. + This field can be of type , , or a type that is both (a) derived from ICollection<ILocationBinding> and (b) has a parameterless constructor. + The field or property to import. + + + + Initializes a new instance of the class and specifies the name of the property to be imported; the type of this + property will be matched according to the type of the aspect field. + + A field of the aspect class to which the field or property should be bound at build time. + This field must be of type . + The name of the property to import. + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + Initializes a new instance of the class and specifies the name of the property to be imported; the type of this + property will be matched according to the type of the aspect field. + + A field of the aspect class to which the field or property should be bound at build time. + This field must be of type . + Fallback list of possible names of the property to import. + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + Gets the field or property of the target class that needs to be imported into the aspect. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Base class for and . + + + + + Gets the field of the aspect class to which the field or property needs to be bound. + + + + + Determines whether a build-time error should be emitted if the member cannot be found. + If false, the binding field will be null in case the imported member is absent. + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Custom attribute that, when applied to an instance field of an aspect class, determines + that this field should be bound to a method, event or property, of the + target class of this aspect. Valid types for fields are + a concrete (to bind to a method), + or + (to bind to a property), or (to bind to an event). + + + + + Initializes a new . + + + + + + + PostSharp.Aspects.Advices.ImportMemberAttribute + + + + + + + param + memberName + M:PostSharp.Aspects.Advices.ImportMemberAttribute.#ctor(System.String) + + + + + + + Initializes a new . + + Possible names of the member to import in the order of precedence. + + + + Determines whether a build time error must be issued if the member to be + imported is absent. If false, the binding field will be null + in case the imported member is absent. + + + + + Name of the imported member. + + + + + Array of possible names of imported member in the order of precedence. + + + + + Determines when the member should be imported: either before () + or after () members have been introduced by the current aspect. + Default is . + + + + + Enumeration of moments when members should be imported into an aspect. + + + + + + + + + + Before the aspect introduces its own members. This is similar to calling the overridden method using the + base keyword in C#. The overridden method implementation is always selected, even if the method + is virtual. + + + + + After the aspect introduces its own members. Note that importing a member introduced by the current + aspect makes sense only if the member has been introduced as virtual; in this case, the + the imported member is dynamically resolved using the virtual table of the target object. + + + + + Represents an advises that import a method of the target class into the aspect class. + + + + + Initializes a new instance of the . + + A field of the aspect class into that will be assigned to a delegate of the imported method at runtime. The field type should be a delegate of the same signature than the method to import. + Name of the method to import. + + true if the build should fail if there no matching method in the target class, false to set to null in this case. + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Initializes a new instance of the . + + A field of the aspect class into that will be assigned to a delegate of the imported method at runtime. The field type should be a delegate of the same signature than the method to import. + Fallback list of possible names of the member to be imported. + + true if the build should fail if there no matching method in the target class, false to set to null in this case. + Determines whether the should be bound to the member + as resolved before or after introduction of new members into the target class by the current advise. + + + + + Gets the reflection object ( or ) that needs to be + imported, or null if the exact member is unknown and must be matched by name and signature. + + + + + Gets the fallback list of possible names of the member to be imported. + + + + + Custom attribute that, when applied to a method of an aspect class, specifies that this method + should be invoked whenever the aspect instance needs to be initialized. The target method + must have a void return value and have a single parameter of type . + This method is equivalent to + + + + + + PostSharp.Aspects.Advices.InitializeAspectInstanceAdvice + + + + + + + Enumeration of actions to be overtaken when an interface that should be introduced into a type is already + implemented by that type. + + + + + . + + + + + Fails and emits an error message. + + + + + Silently ignore this interface (does not introduce it). + + + + + Represents an advise that introduces an interface into the target class. The interface must be implemented by the aspect class. + + + + + Initializes a new instance of the class. + + Interface to introduce to the target class. Must be implemented by the aspect class itself. + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Gets the interface to be introduced into the target class. + + + + + + + summary + P:PostSharp.Aspects.Advices.IntroduceInterfaceAdviceInstance.MasterAspectMember + + + + + + + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Custom attribute that, when applied to an aspect class, specifies that the aspect should + introduce a given interface into the type to which the aspect is applied. + + + + + Initializes a new . + + Interface that should be introduced into the types + to which the aspect is applied. + + + + Specifies the action ( or ) + to be overtaken when an ancestor of the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be exposed indirectly through the + interface. If false, the interface + will be implemented directly by the type. + + + + + Specifies the action ( or ) + to be overtaken when the interface specified in the constructor of this custom attribute + is already implemented by the type to which the current aspect is applied. + + + + + Base class for . + + + + + Determines whether the introduced member should be virtual. + + + + + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Gets the visibility of the introduced member. + + + + + Custom attribute that, when applied on a method, event or property of an aspect class, specifies + that this method, event or property should be introduced into the types to which the aspect is applied. + + + + + + + PostSharp.Aspects.Advices.IntroduceMemberAttribute + + + + + + + Determines whether the property has been specified. + + + + + Determines whether the introduced member should be virtual. + + + + + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Determines the visibility (, (, ...) + of the introduced member. + + + + + Represents an advice that introduces a method of the aspect class into the target class. + + + + + Initializes a new instance of the class. + + A public method of the aspect class. + Visibility of the introduced method. + + true if the introduced method should be virtual, false if it should be non-virtual (or sealed, if the method is overriding another one), + or null if the method should be virtual only if the overridden method is also virtual. See for details. + Determines the action to be overtaken when the member to be introduced already exists + in the type to which the aspect is applied, or to a base type. + + + + + Gets the main field or method of the aspect class that the current relates to. + + + + + A weakly-typed interface for the class. + + + + + Gets the property value. + + The property value. + + + + Sets the property value. + + The new property value. + + + + Custom attribute that, when applied on a method of an aspect class, specifies that this method + has the same semantic as the method + of the interface. + + + + + + + PostSharp.Aspects.Advices.LocationValidationAdvice + + + + + + + Enumeration of actions to be overtaken by the aspect extension + when the member to be introduced already exists in the aspect target type or its base type. + + + + + + + + + + Emits a build time error. + + + + + Silently ignore the member introduction. + + + + + Tries to override the member, and fails if it is impossible (i.e. if the existing member is defined + in a base type and is sealed or non-virtual). + + + + + Tries to override the member, and silently ignore if it is impossible (i.e. if the existing member is defined + in a base type and is sealed or non-virtual). + + + + + Custom attribute that, when applied on an advice method, specifies the name of + the method that will be invoked at build-time to return the set of elements of code + to which the advice applies. + + + + + Initializes a new . + + Name of the method returning the set of targets. This method should have + a specific signature as discussed in the class documentation. + + + + Gets the name of the method returning the set of code elements. + + + + + Custom attribute that, when applied on an advice method, specifies to which elements of + code this advice applies, based on the kind, name and attributes of code elements. + Works similarly as . + + + + + + + PostSharp.Aspects.Advices.MulticastPointcut + + + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies. + + + + + Gets or sets the expression specifying to which members + the aspect extension applies. + + + + + Gets or sets the kind of elements to which this aspect extension applies. + + + + + Custom attribute that, when applied to a method of an aspect class, specifies that this method + should be invoked after the instances of all the aspects applied on the same target has been initialized. The target method + must have a void return value and have a single parameter of type . + + + + + + + PostSharp.Aspects.Advices.OnAspectsInitializedAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventAddHandlerAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventInvokeHandlerAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies that this method is an advice + having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnEventRemoveHandlerAdvice + + + + + + + Custom attribute that, when applied to a method of an aspect implementing , specifies that this method should be executed + after the last instance constructor of the target class of the aspect has completed execution. That is, this method will be invoked when the target object + will be fully constructed. This custom attribute can be applied only on methods that have void return type and accepts no parameter. + + + + + + + PostSharp.Aspects.Advices.OnInstanceConstructedAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnLocationGetValueAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnLocationSetValueAdvice + + + + + + + Base class for , , + or . + + + + + Determines how the advice should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodEntryAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodExceptionAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodExitAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodInvokeAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodResumeAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodSuccessAdvice + + + + + + + Custom attribute that, when applied on a method of an aspect class, specifies + that this method is an advice having the same semantics as . + + + + + + + PostSharp.Aspects.Advices.OnMethodYieldAdvice + + + + + + + Custom attribute, typically accompanying an advice, specifying + to which code elements the advice applies. + + + + + + + PostSharp.Aspects.Advices.Pointcut + + + + + + + Exposes the semantics of a parameterless property for use + with the aspect extension. + + Property value type. + + + + Gets a delegate enabling to invoke the get accessor + of the imported property. + + + + + Gets a delegate enabling to invoke the set accessor + of the imported property. + + + + + Mimics the semantics of a property accepting a single index parameter, for use + with the aspect extension. + + Property index type. + Property value type. + + + + Gets a delegate enabling to invoke the get accessor + of the imported property. + + + + + Gets a delegate enabling to invoke the set accessor + of the imported property. + + + + + Defines the signature of methods implementing the + semantic of a parameterless property. + + Property value type. + The property value. + + + + Defines the signature of methods implementing the + semantic of a property with a single index parameter. + + Index. + Property value type. + Property index type. + The property value. + + + + Defines the signature of methods implementing the + semantic of a parameterless property. + + The property value. + Property value type. + + + + Defines the signature of methods implementing the + semantic of a property with a single index parameter. + + Index. + The property value. + Property value type. + Property index type. + + + + that selects exactly the aspect target. + + + + + + + PostSharp.Aspects.Advices.SelfPointcut + + + + + + + Configuration of an . + + + + + + + PostSharp.Aspects.Configuration.AspectConfiguration + + + + + + + Gets or sets the aspect priority. Aspects with smaller priority are processed first. The default priority is zero. + + + + + Gets or sets the collection of dependencies. + + + + + Gets or sets the type of the serializer that will be used + to configure the current aspect. + + + + + Configures an aspect of type . + + + + + + + PostSharp.Aspects.Configuration.AspectConfigurationAttribute + + + + + + + Gets or sets the weaving priority of the aspect. + + + + + Creates a concrete instance specifically for the current + type. + + A new and empty instance of , whose concrete type corresponds to + the concrete type of the . + + + + Gets the corresponding to the current custom attribute. + + An corresponding to the current custom attribute. + + + + Gets or sets the of the serializer that will be used + to configure the current aspect. + + + + + Sets up an object according to the current custom attribute instance. + + The instance previously returned by the + method. + + + + Custom attribute that, when applied to an aspect, specifies which custom attribute type + (derived from ) can provide declarative configuration for the aspect. + + + + + Initializes a new . + + Custom attribute type + (derived from ). + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.CompositionAspectConfiguration + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces specified by + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface specified by the property. + + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces specified by or + is already implemented by the type to which the aspect is applied. + + + + + Gets or sets the array of interfaces to be introduced indirectly into the target type of the aspect. These + interfaces will become accessible through the interface. + + + + + Gets or sets the array of interfaces that should be introduced publicly into the target type of the aspect. + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute + + + + + + + Specifies the action ( or ) + to be overtaken when an ancestor of one of the interfaces specified by + is already implemented by the type to which the current aspect is applied. + + + + + Determines whether the interface should be introduced into the type to which the aspect + is applied for each interface specified by the property. + + + + + Determines whether the field containing the interface implementation (and storing the object returned by + ) should be excluded from serialization by . + The same effect is typically obtained by applying the custom attribute to the field. + + + + + Specifies the action ( or ) + to be overtaken when one of the interfaces specified by or + is already implemented by the type to which the aspect is applied. + + + + + Gets or sets the array of type names of interfaces to be introduced indirectly into the target type of the aspect. These + interfaces will become accessible through the interface. + + + + + Gets or sets the array of type names of interfaces that should be introduced publicly into + the target type of the aspect. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration + + + + + + + Gets or sets the construction of the custom attribute that must be applied to the target of this aspect. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.EventInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.EventInterceptionAspectConfigurationAttribute + + + + + + + Allows an to depend on a profile, i.e. + an external piece of configuration stored as a resource in the project file. + Classes derived from may implement this interface. + + + + + Applies the profile to the current configuration object. + + The profile object, represented by the resource named + in section named , with namespace . + + + + + Gets the name of the profile, i.e. the name of the resource representing the profile. + + + + + Gets the name of the project section in which the profile resource is stored. + + + + + Gets the namespace of the project section in which the profile resource is stored. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.LocationInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.LocationInterceptionAspectConfigurationAttribute + + + + + + + Configuration of aspects of type . + + + + + Initializes a new . + + Name of the managed resource. + Content of the managed resource. + + + + Gets the content of the managed resource. + + + + + Gets the name of the managed resource. + + + + + Configuration of aspects of type . + + + + + + + PostSharp.Aspects.Configuration.MethodInterceptionAspectConfiguration + + + + + + + Custom attribute that, when applied on a class implementing , + defines the declarative configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.MethodInterceptionAspectConfigurationAttribute + + + + + + + Configuration of the aspect. + + + + + + + PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Gets or sets the type of exceptions that are caught by this aspect. + + + + + Custom attribute that, when applied on a class implementing , + defines the configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute + + + + + + + Gets or sets the type of exceptions that are caught by this aspect. + + + + + Configuration of the aspect. + + + + + + + PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfiguration + + + + + + + Determines how the aspect should behave when it is applied to an iterator or + async methods, which are compiled into state machines. + + + + + Custom attribute that, when applied on a class implementing , + defines the configuration of that aspect. + + + + + + + PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfigurationAttribute + + + + + + + Specifies an aspect dependency matching an advice of the same aspect instance. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Name of the advice method. + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Name of the advice method. + + + + Gets the name of the method implementing the advice. + + + + + Enumeration of the different kinds of relationships of specified by aspect dependencies. + + + + + The dependency is ignored. + + + + + The dependency specifies an order relationship. + + + + + The dependency specifies that the current aspect or advice requires + another aspect or advice. + + + + + The dependency specifies that the current aspect or advice + conflicts with another aspect or advice. + + + + + The dependency specifies that the current aspect or advice + commutes with another aspect or advice. + + + + + Base class for all custom attributes defining aspect dependencies. An aspect dependency determines the + behavior of aspects or advices when used in conjunction with other aspects and advices. + Aspect dependencies determine ordering, requirements, conflicts, and commutativity of aspects and advices. + + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + + + + Gets the dependency action, i.e. the kind of relationship specified by the dependency + (, , + , or ). + + + + + If true, specifies that the constraint (of type + or ) should emit a warning instead of an error if not + respected. + + + + + Gets the position of the current dependency, i.e. actually the position of the other + aspect or advices with respect to the one related to this dependency. + + + + + Determines the target ( or ) + to which the aspect dependency apply. + + + + + Aspect type to which this dependency applies. This property is required when the + custom attribute is applied at assembly level. It is ignored when applied on + class or method level. + + + + + Collection of . + + + + + + + PostSharp.Aspects.Dependencies.AspectDependencyAttributeCollection + + + + + + + Enumeration of the direction of the relationship specified by an aspect dependency. + + + + + Any order possible (or order not relevant). + + + + + The current aspect or advice is positioned before the other aspect or handler. + + + + + The current aspect or advice is positioned after the other aspect or handler. + + + + + Enumeration of targets ( or ) + to which the aspect dependency apply. + + + + + Natural target of the aspect. + + + + + Declaring type of the natural target of the aspect. + + + + + Specifies an aspect dependency matching aspects or advices having a given effect. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Effect (see ). + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Effect (see ). + + + + Gets the effect that the aspects or advices must have in order to match the current dependency. + + + + + Specifies an aspect dependency matching aspects or advices that are a part of a given role. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Role. + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Role. + + + + Gets the role that the aspects or advices must be a part of in order to match the current dependency. + + + + + Specifies an aspect dependency matching aspects of a specified type, and all its advices. + + + + + Initializes a new and specifies a position. + + Dependency action. + Dependency position. + Aspect type (derived from ). + + + + Initializes a new without specifying the position, + implicitly set to . + + Dependency action. + Aspect type (derived from ). + + + + Gets the type from which the aspects should be derived in order to match the current dependency. + + + + + Specifies that the aspect or aspect advice to which this custom attribute is applied is a + part of a given role. This aspect or advice can then be matched by / + + + + + Initializes a new . + + Role. + + + + Gets the role into which the aspect or advice to which this custom + attribute is applied will be enrolled. + + + + + List of standard effects. + + + + + Change the flow control (for instance by having the possibility to skip execution of an + intercepted method). + + + + + Custom effect (implemented in an aspect advice). All advices have this effect by default, + unless they are annotated by . + + + + + Introduction of a custom attribute. + + + + + Gets a string representing the effect of introducing an interface into a type. + + Name of the introduced interface. + A string that, by convention, represents the introduction of an interface named + into a type. + + + + Gets a string representing the effect of importing a member into from the target + type into the aspect. + + Name of the imported member. + A string that, by convention, represents the import of a member named + from the target type into the aspect. + + + + Gets a string representing the effect of introducing a member into a type. + + Name of the introduced member. + A string that, by convention, represents the introduction of a member named + into a type. + + + + Introduction of an interface. + + + + + Import of a type member. + + + + + Introduction of a type member. + + + + + List of standard roles. + + + + + Caching. + + + + + Data binding (for instance implementation of ). + + + + + Event broker (a system role used internally by PostSharp to realize + the handler). + + + + + Exception handling. + + + + + Performance instrumentation (for instance performance counters). + + + + + Object persistence (for instance Object-Relational Mapper). + + + + + Security enforcing (typically authorization). + + + + + Threading (locking). + + + + + Tracing and logging. + + + + + Transaction handling. + + + + + Validation of field, property, or parameter value. + + + + + Declares that the aspect class or advice to which this custom attribute is applied + is exempt of a given effect. + + + + + Initializes a new declaring that + the aspect class or advice to which this custom attribute is applied has + no effect at all. + + + + + Initializes a new declaring that + the aspect class or advice to which this custom attribute is applied is + exempt of the specified effects. + + List of effects of which the aspect class or advice + to which this custom attribute is applied is guaranteed to be exempt. + + + + Implementation of representing a list of 1 argument. + + Type of the first argument. + + + + Initializes a new . + + + + + First Argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 2 arguments. + + Type of the first argument. + Type of the second argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 3 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 4 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 5 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 6 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 7 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + Type of the seventh argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Seventh argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a list of 8 arguments. + + Type of the first argument. + Type of the second argument. + Type of the third argument. + Type of the fourth argument. + Type of the fifth argument. + Type of the sixth argument. + Type of the seventh argument. + Type of the eighth argument. + + + + Initializes a new . + + + + + First argument. + + + + + Second argument. + + + + + Third argument. + + + + + Fourth argument. + + + + + Fifth argument. + + + + + Sixth argument. + + + + + Seventh argument. + + + + + Eighth argument. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Implementation of representing a + list of arguments of arbitrary length and type. + + + + + Initializes a new . + + + containing the argument values. + + + + Gets or sets the underlying array of arguments. + + + + + Copies all the argument values from the elements of . + + The array that is the source of the argument values copied into the current . + An integer that represents the index in at which copying begins. + + is null. + + is lower than zero. + + + + Copies all arguments values to the specified starting at the specified destination index. + + The array that is the destination of argument values copied from the current . + An integer that represents the index in at which copying begins + The zero-based index in at which copying begins. + + is null. + + is less than 0. + The number of elements in the source is greater than the available space from to the end of the destination . + + + + Gets the value of the argument at a given index. + + Argument index. + The value of the argument at position . + + is lower than zero or greater or equal than . + + + + Sets the value of the argument at a given index. + + Argument index. + New value of the argument at position . + + is not assignable to parameter + at position . + + is lower than zero or greater or equal than . + + + + Base class for Laos serializers, whose role is to serialize aspect instances at compile-time and + deserialize them at runtime. + + + + + + + PostSharp.Aspects.Serialization.AspectSerializer + + + + + + + Deserializes a stream into an array if aspects. + + Stream containing serialized aspects. + Metadata dispenser to be used to resolve serialized metadata references in . + An array of aspects. + + + + Deserializes aspects contained in a managed resource of an assembly. + + Assembly containing the serialized aspects. + Name of the managed resources into which aspects have been serialized. + Metadata dispenser to be used to resolve serialized metadata references in this resource. + An array of aspects. + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Implementation of used at runtime when aspect instances + are deserialized. By overriding the default binder, you can resolve assembly names differently. + This can be useful if assemblies have been renamed or merged between PostSharp run and execution + + + + + Initializes a new . + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + The type of the object the formatter creates a new instance of. + + + + Implementation of based on the + provided by the full version + of the .NET Framework. + + + + + + + PostSharp.Aspects.Serialization.BinaryAspectSerializer + + + + + + + Adds an item to the chain of surrogate selectors + used during the process of serializing aspects. + + A new surrogate selector. + + + + Deserializes a stream into an array if aspects. + + Stream containing serialized aspects. + Metadata dispenser to be used to resolve serialized metadata references in . + An array of aspects. + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + A that receives an + before serialization. + + + + + Sets the . + + An . + + + + When used as a value of . + property, specifies that the aspect should not be serialized but should instead be constructed at runtime using MSIL instructions. + + + + + + + PostSharp.Aspects.Serialization.MsilAspectSerializer + + + + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Implementation of based on the , for use on any supported .NET platform. + + + + + + + PostSharp.Aspects.Serialization.PortableAspectSerializer + + + + + + + Gets or sets the used to deserialize aspects. + + + + + Serializes an array of aspects into a stream. + + Array of aspects to be serialized. + Stream into which aspects have to be serialized. + A metadata emitter for the current module. + + + + Represents a node in a double-linked list. + + Type of values stored in the list. + + + + Gets the next node in the list, or null if the current node is the last one in the list. + + + + + Gets the previous node in the list, or null if the current node is the first one in the list. + + + + + Gets the value stored in the current node. + + + + + Represents a double linked list. + + Type of values stored in the link list. + + + + Gets the first node in the list, or null if the list is empty. + + + + + Determines whether the list is empty. + + + + + Gets the last node in the list, or null if the list is empty. + + + + + Represents a node in a singly linked list. + + Type of values stored in the list. + + + + Gets the next node in the list, or null if the current node is the last one in the list. + + + + + Gets the value stored in the current node. + + + + + Extensions to the interface. + + + + + Transforms an into an . + + A , or null. + Type of values. + An that can enumerate all elements in . + If is null, an empty enumerable is returned. + + + + + Transforms a into an . + + An . + Type of values. + An that can enumerate all elements in . + If is null, an empty enumerable is returned. + + + + + A value-type implementation of the interface. + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.First + + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.IsEmpty + + + + + + + + + summary + P:PostSharp.Collections.ReadOnlyLinkedList`1.Last + + + + + + + Represents a single-listed link. + + Type of values stored in the list. + + + + Gets the first node of the list. + + + + + Gets a value-type enumerator. + + An enumerator. + + + + Determines whether the list is empty. + + + + + An enumerator allowing to enumerate a . + + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + The collection was modified after the enumerator was created. + + + + that, when applied on a declaration, limits the scope (namespace or type) in which this declaration + can be used. This constraint is useful to isolate several components from each other, even if they are implemented in + the same assembly. The ComponentInternal constraint sets the visibility of a declaration between internal and private. + The constraint cannot be applied to public or protected declarations. + + + + + Initializes a restricting the target declaration from being used + from another namespace than the namespace of the declaration. + + + + + Initializes a restricting the target declaration from being used + outside of given types or namespaces, given by strings. + + List of types or namespaces from which the target declaration + can be used. + + + + Initializes a restricting the target declaration from being used + outside of given types or namespaces, given as . + + List of types from which the target declaration can be used. If the name of a + type is NamespaceType, the whole namespace of this type is allowed. + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Root class for all constraints based on . + A constraint is a piece validation logic executed at build time. Constraints + are applied to elements of code ((, , + , , , + , , ) + typically using multicast custom attributes, and verified + at build time for every assembly using this element of code. + + + + + + + PostSharp.Constraints.Constraint + + + + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Custom attribute that, when applied on a declaration, causes PostSharp to emit a warning if the declaration is being used. + + + + + + + PostSharp.Constraints.ExperimentalAttribute + + + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint is a piece of validation logic executed at build time. Constraints + are applied to elements of code (, , + , , , + , , ), + typically (but not necessarily) using custom attributes or . + + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + , when applied to a declaration, prevents it to be used from an different assembly. + This constraint can be used when a declaration must be made public for technical reasons, but its author do + not want it to be used in external code. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + that, when applied on an interface, prevents it to be implemented + in a different assembly. This constraint should be used when the author of an interface + does not expect users to implement the interface and wants to reserve the possibility + to add new methods to the interface. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint is a piece validation logic executed at build time. Constraints + are applied to elements of code ((, , + , , , + , , ), + typically using custom attributes or , and verified + at build time for every assembly using this element of code. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + A constraint that validates a specific element of code. Use an + to validate relationships between elements of code. + + + + + Validates the element of code to which the constraint is applied. + + Element of code to which the constraint is applied (, , + , , , + , , ). + + + + Custom attribute that, when applied to a target declaration, causes PostSharp to emit a warning if the declaration + is being referenced from classes that are not derived from the target class. This constraint is similar to the + C# keyword protected and should be used only when the target declaration must be made public or internal + for non-architectural reasons. + + + + + Initializes a new . + + + + + Gets or sets the severity of messages emitted by this constraint. + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Validates the fact that the constraint has been applied on a valid element of code. When this + method returns false, the constraint is silently ignored. + + + + + param + target + M:PostSharp.Constraints.ProtectedAttribute.ValidateConstraint(System.Object) + + + + + true if the constraint has been applied on a valid element of code, otherwise false. + + + + Implementation of based on . + + + + + + + PostSharp.Constraints.ReferentialConstraint + + + + + + + Validates the constraint. + + Declaration (, , + , , , + , , ) to which + the constraint has been applied. + The assembly being currently processed. + + + + Implementation of based on . + + + + + + + PostSharp.Constraints.ScalarConstraint + + + + + + + Validates the element of code to which the constraint is applied. + + Element of code to which the constraint is applied (, , + , , , + , , ). + + + + Assigns a unique identifier to an assembly. This assembly identifier is used + to generate unique attribute identifiers. + + + + + Initializes a new . + + Assembly identifier. + + + + Enumeration of contexts in which assemblies can be loaded. + + + + + Reference assemblies the ones the project is being linked against. They are typically located + in directory C:\Program Files\Reference Assemblies for the proper target platform. + + + + + Runtime assemblies are the ones loaded at build time in the CLR. They are typically located + in GAC. + + + + + Enumeration of standard levels of backward compatibility. + + + + + No compatibility level defined (latest at execution time). + + + + + Compatibility level for PostSharp 3.0. + + + + + Latest at build time. + + + + + Sets the level of backward compatibility required by aspects in the current assembly. + + + + + Initializes a new . + + Level of backward compatibility required by aspects in the current assembly. + + + + Custom attribute added to the assembly manifest of modules processed by PostSharp. + + + + + Instantiates a new and specifies the license number + (not the full license key). + + License number. + + + + Instantiate a new with a text message, + typically used when PostSharp runs in evaluation mode. + + The watermark text. + + + + Custom attribute that, when applied on an assembly, means that a given message + should be escalated to an error during the current PostSharp session. + + + + + Initializes a new . + + Identifier of the message to be disabled. + + + + Gets the identifier of the message to be disabled. + + + + + Defines constants identifying the different variants of the + .NET Framework (, , ). + + + + + .NET Compact Framework. + + + + + Convert a byte array (typically containing the public key token of mscorlib) + into a string that can be compared to one of the constants defined in this class. + + A byte array (typically containing the public key token of mscorlib) + A string that can be compared to one of the constants defined in this class + + + + Normal, full .NET Framework. + + + + + Micro Framework. + + + + + Silverlight. + + + + + Internal Only. Custom attribute used internally by PostSharp to mark + elements having inherited custom attributes. This custom attribute should not + be used in custom code, otherwise PostSharp may not work properly. + + + + + Gets a text given its key. + + + + + Gets a message text given a message key. + + Message key. + The text corresponding to . + + + + Receives messages. + + + + + Writes a message to the sink. + + A message. + + + + Custom attribute meaning that custom attributes of a given type are + bound to the implementation, not to the semantics. + + + + + Initializes the new . + + Type of the custom attribute that + should not be moved from implementation to semantic. + + + + Gets the type of the custom attribute that + should not be moved from implementation to semantic + + + + + Exception thrown at build time by implementation of + when an annotation is invalid. + + + + + Initializes a new with default message. + + + + + Deserialization constructor. + + Info. + Context. + + + + Initializes a new and with a specified exception message. + + Exception message + + + + Initializes a new with a specified exception message + and inner . + + Exception message. + Inner exception. + + + + Provides information about the current PostSharp environment. + + + + + Gets the currently executing project. + + + + + + + summary + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + param + name + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + returns + M:PostSharp.Extensibility.IPostSharpEnvironment.FindAssembly(System.Reflection.AssemblyName) + + + + + + + Finds the location of an assembly given its name. + + Assembly name. + + or . + The full path of the assembly, or null if the assembly could not be found. + + + + Loads an given its file name. + + Full assembly path. + The . + + + + Provides information about the currently executing project. + + + + + Evaluates an expression (that is, replace parameters by their actual value). + + An expression. + The evaluated expression, or null if one parameter could not be + resolved. + + + + Gets the set of project extension elements () given their name and XML namespace. + + Local name of the project extension element. + XML namespace of the project extension element. + The set of project elements named in all loaded projects. + + + + Gets the variant of the .NET Framework against which the .NET assembly + currently processed is linked. + + A string uniquely identifying the framework variant, to be compared + to the constants defined in the class. + Actually, the public key token of mscorlib is returned. + + + + Gets a build-time service exposed by PostSharp. + + + true whether an exception should be thrown in case the service cannot be acquired, otherwise false. + The default value is true. + An interface derived from . + The service , or null if the service could not be acquired and + was set to false. + + + + Gets the assembly that is being transformed by PostSharp. + + + false if the system has to be returned, true if a wrapper has to be returned. + The assembly being processed. If is true, this method returns an instance of a PostSharp internal + type implementing the interface. Otherwise, the reflection is returned. + + + + Gets the context of the current project that serves as a project-scoped cache. + + + + + Gets the variant and version of the .NET Framework that the assembly being built targets. + + + + + Exposes the method, which gets the reference identity of + the assembly declaring a given type. + + + + + Returns the reference identity of the assembly declaring a type. + + A . + The identity of the reference assembly defining . This assembly is possibly + different than the runtime assembly, which is available from the property + of the class. This method may return null if is + an internal type of a system assembly. + + + + A service exposed by the build-time part of PostSharp. + + + + + Exposes build-time services. + + + + + Gets a build-time service exposed by PostSharp. + + + true whether an exception should be thrown in case the service cannot be acquired, otherwise false. + The default value is true. + An interface derived from . + The service , or null if the service could not be acquired and + was set to false. + + + + A context that provides storage for arbitrary items. + + + + + Gets a value of a given type from the store. + + Type of the value. + The value whose type is , or null if the store + does not contain such value. + + + + Gets a value from the cache or adds it if it does not exist yet. + + The delegate invoked if no value of type is + present in the cache. + Type of the value. + Either the value of type present in the cache, + either the result of the delegate. + + + + Gets a value from the cache or adds a default value if it does not exist yet. + + Type of value. + Either the value of type present in the cache, + either a new object of type . + + + + Adds a value to the store or replace it if a value of the same type already exists. + + The new value. + Type of the new value. + + + + Represents a version and variant of the .NET framework (running on a device) on which the project being built is design to run. + + + + + Unique string identifier of the target device. + + + + + Gets the target profile of the framework (e.g. WindowsPhone). + + + + + Identifier of the framework family (, + , , + ). + + + + + Gets the version of the target profile. + + + + + Interface that, when implemented by a custom attribute (), + causes PostSharp to invoke a validation method for every instance + of that custom attribute. + + + + + Method invoked at build time to ensure that the aspect has been applied to + the right target. + + Target element. + + true if the aspect was applied to an acceptable target, otherwise + false. + + + + Service that allows build-time code to push annotations (both programmatic and user-visible) + to PostSharp Tools for Visual Studio. + + + + + Pushes an annotation to PostSharp Tools for Visual Studio. + + The declaration to which the annotation relate. + The type of the annotation. + Arguments of the annotation. + A human-readable description of the annotation. + A number incrementing the number of lines of code saved on . + + + + Encapsulates a message (error, warning, info, ...). + + + + + Initializes a new and specifies only required parameters. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Name of the component emitting the message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + File that caused the error, or null if + the file is unknown or does not apply. + Position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + Position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + The that caused this message, + or null if this message was not caused by an + exception. + Name of the component emitting the message. + Link to the help file page associated to this message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Message severity (fatal error, error, info, debug). + Identifier of the message type. + File that caused the error, or null if + the file is unknown or does not apply. + Start position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + Start position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + End position (line) in the file that caused the error, + or if the line is + unknown or does not apply. + End position (column) in the file that caused the error, + or if the line is + unknown or does not apply. + The that caused this message, + or null if this message was not caused by an + exception. + Name of the component emitting the message. + Link to the help file page associated to this message. + Fully formatted message text. + + + + Initializes a new and specifies all its properties. + + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Fully formatted message text. + Link to the help file page associated to this message. + Name of the component emitting the message. + The that caused this message, + or null if this message was not caused by an + exception. + + + + Returns a string composed of the messages of + all inner exceptions. + + The outer exception. + A string composed of the messages of all + and all inner exceptions, + concatenated by the string -->. + + + + Gets the help link. + + + + + Gets the + + + + + Location of the source code artifact causing the message. + + + + + Gets the end column in the file that caused the message. + + + + + Gets the end line in the file that caused the message. + + + + + Gets the name of the file that caused + the message. + + + + + Gets the start column in the file that caused the message. + + + + + Gets the start line in the file that caused the message. + + + + + Gets the message type identifier. + + + + + Gets the message formatted text. + + + + + When set to the locationLine or locationColumn constructor parameter or the , + , , , means that the value of this property is unknown. + + + + + Gets the message severity. + + + + + Gets or sets the name of the source component. + + + + + Writes a message by providing a object. + + A . + + + + Obsolete. + + + + + param + severity + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + param + errorCode + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + param + message + M:PostSharp.Extensibility.Message.Write(PostSharp.Extensibility.SeverityType,System.String,System.String) + + + + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Error message arguments. + + + + Writes a message. + + Severity. + Error code. + Error message. + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code (, , , + , , or ) + to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a MetadataDeclaration. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Writes a message. + + Severity. + Error code. + Error message formatting string. + Formatting string arguments. + Element of code to which the message applies. + + + + Provides a base implementation of + where the message key is supposed to be in format PRE0000, where + PRE is a prefix and 0000 is an integer. Keys for help URLs + have the format PRE0000?. + + + + + Initializes a new . + + Prefix of all messages provided by the new dispenser. + + + + Gets the message help URL of a given number. + + Message number. + The message help URL corresponding to . + + + + Gets the message text of a given number. + + Message number. + The message text corresponding to . + + + + Gets a message text given a message key. + + Message key. + The text corresponding to . + + + + Gets the message prefix. + + + + + Exception embedding a . + + + + + Initializes a new from + an existing . + + A . + + + + Serializes the current object. + + Serialization information. + Serialization context. + + + + Gets the em + + + + + Provides commodity methods to work with an . + + + + + Initializes a new backed by a . + + Name of the component emitting. the messages. + The that will be used to + retrieve message texts. + + + + Instantiates a backed by a . + + Source name. + The . + + + + + + summary + M:PostSharp.Extensibility.MessageSource.CreateMessage(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + + + + + + + + returns + M:PostSharp.Extensibility.MessageSource.CreateMessage(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + Creates a from the current . + + Location of the source code artifact causing the message. + Severity. + Message identifier (resolved by the current ). + Exception causing the message, or null. + Arguments of the message text. + A . + + + + Gets the current message sink. + + + + + Writes a message to the sink. + + A message. + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[]) + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],PostSharp.Reflection.SymbolSequencePoint) + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String) + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32) + + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32) + + + + + + + + + + + + + + + summary + M:PostSharp.Extensibility.MessageSource.Write(PostSharp.Extensibility.SeverityType,System.String,System.Object[],System.String,System.Int32,System.Int32,System.Exception) + + + + + + + + + + + + + + Emits a and specifies an inner . + + Location of the source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + The that caused this message, + or null if this message was not caused by an + exception. + + + + Emits a . + + Location of the source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact (, , , + , , ) that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Emits a . + + Source code artifact that caused the message. + Message severity (fatal error, error, info, debug). + Identifier of the message type. + Array of arguments used to format the message text, + or null if this message has no argument. + + + + Custom attribute that, when applied on an aspect, causes the aspect to increment some metric at build time. + + + + + Initializes a new . + + Metric name. + Metric operand. + + + + Determines whether the usage of features used by the target aspects must be instrumented. + + + + + Gets the name of the metric. + + + + + Gets the operand of the metric. + + + + + Custom attribute that can be applied to multiple elements + using wildcards. + + + + + + + PostSharp.Extensibility.MulticastAttribute + + + + + + + If true, indicates that this attribute removes all other instances of the + same attribute type from the set of elements defined by the current instance. + + + + + Determines whether this attribute is inherited + + + + + Gets or sets the priority of the current attribute in case that multiple + instances are defined on the same element (lower values are processed before). + + + + + Determines whether this attribute replaces other attributes found on the + target declarations. + + + + + Gets or sets the assemblies to which the current attribute apply. + + + + + Gets or sets the kind of elements to which this custom attributes applies. + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies, when the member is external to the current module. + + + + + Gets or sets the visibilities of types to which this attribute applies, + when this type is external to the current module. + + + + + Gets or sets the visibilities, scopes, virtualities, and implementation + of members to which this attribute applies. + + + + + Gets or sets the expression specifying to which members + this instance applies. + + + + + Gets or sets the passing style (by value, out or ref) + of parameters to which this attribute applies. + + + + + Gets or sets the expression specifying to which parameters + this instance applies. + + + + + Gets or sets the visibilities of types to which this attribute applies. + + + + + Gets or sets the expression specifying to which types + this instance applies. + + + + + Attributes of elements to which multicast custom attributes () + apply. + + + + + Specifies that the set of target attributes is inherited from + the parent custom attribute. + + + + + Private (visible inside the current type). + + + + + Protected (visible inside derived types). + + + + + Internal (visible inside the current assembly). + + + + + Internal and protected (visible inside derived types that are defined in the current assembly). + + + + + Internal or protected (visible inside all derived types and in the current assembly). + + + + + Public (visible everywhere). + + + + + Any visibility. + + + + + Static scope. + + + + + Instance scope. + + + + + Any scope ( | ). + + + + + Abstract methods. + + + + + Concrete (non-abstract) methods. + + + + + Any abstraction ( | ). + + + + + Virtual methods. + + + + + Non-virtual methods. + + + + + Any virtuality ( | ). + + + + + Managed code implementation. + + + + + Non-managed code implementation (external or system). + + + + + Any implementation ( | ). + + + + + Literal fields. + + + + + Non-literal fields. + + + + + Any field literality ( | ). + + + + + Input parameters. + + + + + Compiler-generated code (for instance closure types of anonymous method, iterator type, ...). + + + + + User-generated code (anything expected ). + + + + + Any code generation ( | )l + + + + + Output (out in C#) parameters. + + + + + Input/Output (ref in C#) parameters. + + + + + Any kind of parameter passing ( | | ). + + + + + All members. + + + + + Custom attribute that determines the usage of a . + + + + + Initializes a new . + + + + + Initializes a new . + + Kinds of targets that instances of the related + apply to. + + + + Determines whether this attribute can be applied to declaration of external assemblies + (i.e. to other assemblies than the one in which the custom attribute is instantiated). + + + + + Determines whether many instances of the custom attribute are allowed on a single declaration. + + + + + Determines whether instances of the target + should be hidden from the Aspect Browser, in the Visual Studio extension. + + + + + Determines whether the custom attribute in inherited along the lines of inheritance + of the target element. + + + + + Determines whether the custom attribute should be persisted in metadata, so that + it would be available for System.Reflection. + + + + + Gets or sets the attributes of the members (fields or methods) to which + the custom attribute can be applied, when the members are external to + the current module. + + + + + Gets or sets the attributes of the types to which + the custom attribute can be applied, when the type is external to + the current module. If the custom attribute relates to + fields or methods, this property specifies which attributes + of the declaring type are acceptable. + + + + + Gets or sets the attributes of the members (fields or methods) to which + the custom attribute can be applied. + + + + + Gets or sets the attributes of the parameter to which + the custom attribute can be applied. + + + + + Gets or sets the attributes of the types to which + the custom attribute can be applied. If the custom attribute relates to + fields or methods, this property specifies which attributes + of the declaring type are acceptable. + + + + + Gets the kinds of targets that instances of the related + apply to. + + + + + Kind of inheritance of . + + + + + No inheritance. + + + + + The instance is inherited to children of the original element, + but multicasting is not applied to members of children. + + + + + The instance is inherited to children of the original element + and multicasting is applied to members of children. + + + + + Kinds of targets to which multicast custom attributes () + can apply. + + + + + Specifies that the set of target elements is inherited from + the parent custom attribute. + + + + + Class. + + + + + Structure. + + + + + Enumeration. + + + + + Delegate. + + + + + Interface. + + + + + Any type (, , , + or ). + + + + + Field. + + + + + Method (but not constructor). + + + + + Instance constructor. + + + + + Static constructor. + + + + + Property (but not methods inside the property). + + + + + Event (but not methods inside the event). + + + + + Any member (, , , + , + , ). + + + + + Assembly. + + + + + Method or property parameter. + + + + + Method or property return value. + + + + + All element kinds. + + + + + Provides access to the current PostSharp environment (). + + + + + Gets the current PostSharp environment, or null + if the PostSharp Platform is not loaded in the current + context. + + + + + Gets the current PostSharp project. + + + + + Determines whether the PostSharp Platform is currently loaded. + + + + + Provides tracing functionality. An instance of the type + implements a trace sink. + + + + + Initialize a new sink. + + Category of messages. + + + + Enables a trace category known by its object. + + A object. + + + + Enables a trace category known by its name. + + The category name. + + + + Determines whether the current trace sink is enabled. + + + + + Writes a message to the current sink without formatting parameter. + + Message. + + + + Writes a message to the current sink with a single formatting parameter. + + Message formatting string. + The first formatting parameter. + + + + Writes a message to the current sink with two formatting parameters. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + + + + Writes a message to the current sink with three formatting parameters. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + The third formatting parameter. + + + + Writes a message to the current sink with many formatting parameters. + + Message formatting string. + Formatting parameters. + + + + Writes a message to the current sink without parameter, + and issues a line break. + + Message formatting string. + + + + Writes a message to the current sink with a single formatting parameter, + and issues a line break. + + Message formatting string. + The first formatting parameter. + + + + Writes a message to the current sink with two formatting parameters, + and issues a line break. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + + + + Writes a message to the current sink with three formatting parameters, + and issues a line break. + + Message formatting string. + The first formatting parameter. + The second formatting parameter. + The third formatting parameter. + + + + Writes a message to the current sink with many formatting parameters, and issues a line break. + + Message formatting string. + Formatting parameters. + + + + Represents a custom element (or section) in the XML project type. + + + + + Gets the full path of the file in which the element is defined. + + + + + Gets the text representation of the materializing the project extension. + + + + + Gets the materializing the project extension. + + + + + Represents an element of a resource section, i.e. a named object deserialized from XML. + + + + + Initializes a new . + + Resource name. + Resource value. + + + + Gets the name of the resource section, i.e. the name of the XML element containing the resource. + + + + + Gets the resource value, i.e. the object that has been constructed by deserializing the XML element. + + + + + Custom attribute that, when applied on another custom attribute (a class derived + from ), means that assemblies with elements + annotated with that custom attribute should be processed by PostSharp. + + + + + Initializes a new . + + Name of the required plug-in (file name without extension). + Name of the required task (should be defined in ). + + + + Determines whether the requirement should apply only to assemblies referencing the declaration to + which the custom attribute is applied. If true, the requirement will not apply to the assembly + where the custom attribute is used. + + + + + Gets the name of the required plug-in (file name without the extension). + + + + + Gets the name of the required task (should be defined in ). + + + + + Custom attribute that, when applied on a type, specifies that all build-time semantics of this type + require reflection wrappers to be passed instead of real reflection objects. + + + + + + + PostSharp.Extensibility.RequireReflectionWrapperAttribute + + + + + + + Types of message severities. + + + + + Debugging information (typically trace). + + + + + Verbose (lowly important information). + + + + + Information. + + + + + Important information. + + + + + Command line. + + + + + Warning. + + + + + Error. + + + + + Fatal error. + + + + + No message. + + + + + Instructs PostSharp that the validation of is done by another component, and should + not be processed by the default component. + + + + + + + PostSharp.Extensibility.SuppressAnnotationValidationAttribute + + + + + + + Represents a variant of family (variant) of the .NET Framework, e.g. , , + or . + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current object represents a null instance. + + + + + Instance of representing MonoAndroid. + + + + + Instance of representing MonoTouch. + + + + + Instance of representing .NET Framework for Windows Store. + + + + + Instance of representing the full .NET Framework. + + + + + Instance of representing .NET Portable Class Library. + + + + + Determines whether two instances are equal. + + A . + A . + + true if and are equal, otherwise false. + + + + Determines whether two instances are different. + + A . + A . + + true if and are different, otherwise false + + + + Instance of representing Silverlight. + + + + + Gets the string identity of the current object. + + + + + Instance of representing Windows Phone (Silverlight). + + + + + Instance of representing Xamarin.iOS. + + + + + Kinds of code references (). + + + + + No code reference. + + + + + Type inheritance. The base type is the ; + the child type is the . + See . + + + + + Member type (field or property type, method return type, or parameter type). + The member type is the . + See . + + + + + Operand of an instruction in a method body. The + is the method. See . + + + + + Instance of a custom attribute on a target declaration. + + + + + Gets the custom attribute. + + + + + Gets the (including given constructor + arguments and named arguments) used to construct + the . + + + + + Gets the declaration on which the custom attribute is defined. + + + + + Custom implementation of a reflection that select + methods based on exact matches using the . + + + + Selects a field from the given set of fields, based on the specified criteria. + A bitwise combination of values. + The set of fields that are candidates for matching. For example, when a object is used by , this parameter specifies the set of fields that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The field value used to locate a matching field. + An instance of that is used to control the coercion of data types, in binder implementations that coerce types. If is null, the for the current thread is used.Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.BindToField(System.Reflection.BindingFlags,System.Reflection.FieldInfo[],System.Object,System.Globalization.CultureInfo) + + + + The matching field. + For the default binder, includes , and contains multiple fields that are equally good matches for . For example, contains a MyClass object that implements the IMyClass interface, and contains a field of type MyClass and a field of type IMyClass. + For the default binder, includes , and contains no fields that can accept . + For the default binder, includes , and is null or an empty array.-or- includes , and is null. + + + Selects a method to invoke from the given set of methods, based on the supplied arguments. + A bitwise combination of values. + The set of methods that are candidates for matching. For example, when a object is used by , this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The arguments that are passed in. The binder can change the order of the arguments in this array; for example, the default binder changes the order of arguments if the parameter is used to specify an order other than positional order. If a binder implementation coerces argument types, the types and values of the arguments can be changed as well. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. The default binder implementation does not use this parameter. + An instance of that is used to control the coercion of data types, in binder implementations that coerce types. If is null, the for the current thread is used. Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions. + The parameter names, if parameter names are to be considered when matching, or null if arguments are to be treated as purely positional. For example, parameter names must be used if arguments are not supplied in positional order. + After the method returns, contains a binder-provided object that keeps track of argument reordering. The binder creates this object, and the binder is the sole consumer of this object. If is not null when BindToMethod returns, you must pass to the method if you want to restore to its original order, for example, so that you can retrieve the values of ref parameters (ByRef parameters in Visual Basic). + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.BindToMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Object[]@,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],System.Object@) + + + + The matching method. + For the default binder, contains multiple methods that are equally good matches for . For example, contains a MyClass object that implements the IMyClass interface, and contains a method that takes MyClass and a method that takes IMyClass. + For the default binder, contains no methods that can accept the arguments supplied in . + For the default binder, is null or an empty array. + + + Changes the type of the given Object to the given Type. + The object to change into a new Type. + The new Type that will become. + An instance of that is used to control the coercion of data types. If is null, the for the current thread is used.Note   For example, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. + An object that contains the given value as the new type. + + + + Singleton instance. + + + + Upon returning from , restores the argument to what it was when it came from BindToMethod. + The actual arguments that are passed in. Both the types and values of the arguments can be changed. + A binder-provided object that keeps track of argument reordering. + + + Selects a method from the given set of methods, based on the argument type. + A bitwise combination of values. + The set of methods that are candidates for matching. For example, when a object is used by , this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The parameter types used to locate a matching method. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.SelectMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Type[],System.Reflection.ParameterModifier[]) + + + + The matching method, if found; otherwise, null. + For the default binder, contains multiple methods that are equally good matches for the parameter types described by . For example, the array in contains a object for MyClass and the array in contains a method that takes a base class of MyClass and a method that takes an interface that MyClass implements. + For the default binder, is null or an empty array.-or-An element of derives from , but is not of type RuntimeType. + + + Selects a property from the given set of properties, based on the specified criteria. + A bitwise combination of values. + The set of properties that are candidates for matching. For example, when a object is used by , this parameter specifies the set of properties that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by changes the order of this array. + The return value the matching property must have. + The index types of the property being searched for. Used for index properties such as the indexer for a class. + An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. + + + + param + bindingFlags + M:PostSharp.Reflection.CustomReflectionBinder.SelectProperty(System.Reflection.BindingFlags,System.Reflection.PropertyInfo[],System.Type,System.Type[],System.Reflection.ParameterModifier[]) + + + + The matching property. + For the default binder, contains multiple properties that are equally good matches for and . + For the default binder, is null or an empty array. + + + + Encapsulates a unique identifier of a declaration. The identifier does not contain the kind of declaration. Different declarations of different kinds can have the same identifier. + + + + + Gets a 29-bit of the name of the assembly containing the declaration represented by the current . + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + + Gets the for a given declaration. + + A , , , , or . + A that identifies . + + + + Gets the that represents the declaring type of the declaration represented by the current . + + The that represents the declaring type of the declaration represented by the current . + If the current already represents a type, this method returns the current . + + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current is null. + + + + + Maximum number of the same kind in the same type supported by the class. + + + + + Maximum number of types per assembly supported by the class. + + + + + Gets a number that uniquely identifies the member inside its declaring type, for the given member kind. + + + + + Gets a null instance of the type/ + + + + + Determines whether two instances of the type are equal. + + + + + + + returns + M:PostSharp.Reflection.DeclarationIdentifier.op_Equality(PostSharp.Reflection.DeclarationIdentifier,PostSharp.Reflection.DeclarationIdentifier) + + + + + + + Determines whether two instances of the type are different. + + + + + + + returns + M:PostSharp.Reflection.DeclarationIdentifier.op_Inequality(PostSharp.Reflection.DeclarationIdentifier,PostSharp.Reflection.DeclarationIdentifier) + + + + + + + Gets a number that uniquely identifies the type inside its declaring assembly. + + + + + Defines the semantics of an assembly name. + + + + + Gets the assembly culture name. + + + + + Gets the assembly public key. + + An array of bytes containing the public key, + or null if no public key is specified. + + + + Gets the assembly public key token. + + An array of bytes containing the public key token, + or null if no public key is specified. + + + + Determines whether the current assembly (or assembly reference) is mscorlib. + + + + + Determines whether the reference is retargetable by the CLR, i.e. can be accommodated by + an assembly whose identity does not match the current assembly reference. + + + + + Determines whether the current assembly (or assembly reference) contains a strong name signature. + + + + + Gets the assembly friendly name. + + + + + Gets the processor architecture that the current assembly targets. + + + + + Gets the assembly version. + + + + + Represents a reference between two declarations. + + + + + Gets the declaration referenced by the other. + + + + + Gets the kind of code reference. + + + + + Gets the declaration referencing the other. + + + + + Semantics of service that deserializes metadata objects (i.e. reflection objects) that have + been serialized by . + + + + + Gets the reflection object corresponding to the given index. + + Index returned by + at build time. + The reflection object corresponding to . + + + + Semantics of a service that allows build-time code to serialize references + to metadata objects (i.e. reflection objects) in a way that is compatible with obfuscators. + References are deserialized at run-time using . + + + + + Gets the index of a serialized metadata reference. + + A reflection object. + The index of , to be serialized + and deserialized at runtime with . + + + + Represents a file of source code. + + + + + Document type ( according to Microsoft PDB specification). + + + + + Full path of the file. + + + + + Language ( according to Microsoft PDB specification). + + + + + Language vendor ( according to Microsoft PDB specification). + + + + + Represents a , or + , which all have the semantics of a location (get value, set value). + + + + + Initializes a new from a . + + The field represented by the . + + + + Initializes a new from a . + + The parameter represented by the . + + + + Initializes a new from a . + + The property represented by the . + + + + Gets the declaring type of the underlying field, property, parameter, or return value. + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + Serves as the default hash function. + A hash code for the current object. + + + + Returns the value of the field or property represented by the current object. + + The object whose field or property value will be returned (null if the + field or property is static). + The value of the field or property. + + + + Returns the value of the field or property represented by the current object + with optional index values for indexed properties. + + The object whose field or property value will be returned (null if the + field or property is static). + Optional index values for indexed properties. null for fields or non-index + properties. + The value of the field or property. + + + + Determines whether the underlying field or property is static. + + + + + Gets the location kind (, + , + or + ). + + + + + Gets the type of values that can be stored in the location. + + + + + Gets the name of the underlying field, property, parameter, or return value. + + + + + Determines whether two instances of represent the same element of code. + + A . + A . + + true if and are equal, otherwise false. + + + + Determines whether two instances of represent different elements of code. + + A . + A . + + true if and are different, otherwise false. + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + + Gets the underlying , + or null if the underlying code element is not a property. + + + + + Sets the value of the field or property represented by the current object to a given value. + + The object whose field or property value will be changed (null if the + field or property is static). + New value. + + + + Sets the value of the field or property represented by the current object to a given value + with optional index values for indexed properties. + + The object whose field or property value will be changed (null if the + field or property is static). + New value. + Optional index values for indexed properties. null for fields or non-index + properties. + + + + Initializes a new from a + , , or . + + + + + + returns + M:PostSharp.Reflection.LocationInfo.ToLocationInfo(System.Object) + + + + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + + Converts a collection of into an array of . + + A collection of . + An array of . + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Enumerates the kinds of code elements that can be encapsulated by a . + + + + + . + + + + + . + + + + + A representing a parameter (not a ). + + + + + A representing a return value. + + + + + Represents a relationship between a type and a member of this type. + A member can be a , , or + . + + + + + Gets the member (, , or + ). + + + + + Gets the member type. + + + + + Represents a relationship between a declaration (, + , or ) + and a method whose instructions (method body) use the declaration. + + + + + Gets the instructions that reference . + + + + + Gets the declaration (, + or ) used by the method. + + + + + Gets the used by the method. If the current + object represents a reference to a + or , this property returns the declaring + type of the method or constructor. + + + + + Gets the method ( or ) + whose body uses the declaration. + + + + + Instructions whose operands can reference a declaration. + + + + + No instruction. + + + + + Get field value. + + + + + Set field value. + + + + + Call to a static or sealed method. + + + + + Call to a virtual method. + + + + + Creation of a new instance (invoke the constructor). + + + + + Get field address. + + + + + Load the metadata token (for instance typeof). + + + + + Load the address of a static or sealed method (delegate instantiation). + + + + + Load the address of a virtual method (delegate instantiation). + + + + + Type casting. + + + + + "Safe" type casting (as or is in C#). + + + + + Get the size of a value type (sizeof in C#). + + + + + Create a new array of a type. + + + + + Specifies how an object should be constructed, i.e. specifies the constructor to be + used, the arguments to be passed to this constructor, and the fields or properties to + be set. + + + + + Initializes a new type-safe from a . + + Constructor. + Arguments passed to the constructor. + + + + Initializes a new type-safe from a + A + + + + Initializes a new by specifying a type name and a list of constructor arguments. + + Name of the object type. + Arguments passed to the constructor. + + + + Initializes a new by specifying a type name and a list of constructor arguments. + + Object type. + Arguments passed to the constructor. + + + + Gets the custom attribute constructor. + + + + + Gets the arguments passed to the custom attribute constructor. + + + + + Gets the collection of named arguments. + + + + + Gets the assembly-qualified type name of the object. + + + + + Provides utility methods to work with the System.Reflection namespace. + + + + + Gets the whose a given field is the backing field from the current type or base types. + + A field. + The representing the property whose is the backing field, or null + if is not the backing field of an automatic property. + + + + Gets the whose a given field is the backing field and specifies whether base types should be considered. + + A field. + + true if the property should be looked for in the base, otherwise false. + The representing the property whose is the backing field, or null + if is not the backing field of an automatic property. + + + + Gets the backing field of a given property. + + A property. + The representing the backing field of , or null if + is not an automatic property. + + + + Gets the kind of state machine (typically , or ) that implements a given method. + + A method. + A value, or if is not implemented by a state machine. + + + + Determines whether a given property is an automatic property. + + A property. + + true if represents an automatic property, otherwise false. + + + + Provides helper methods for work with . + + + + + Determines whether the attribute relationship exists between two assemblies. + + The assembly defining the attribute. + The assembly referenced by the attribute. + + + + returns + M:PostSharp.Reflection.ReflectionHelper.AreInternalsVisibleTo(System.Reflection.Assembly,System.Reflection.Assembly) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + param + typeName + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + param + assemblyName + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetAssemblyQualifiedTypeName(System.String,System.String) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + addMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + removeMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + raiseMethod + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo) + + + + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + declaringType + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + getter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + setter + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + param + throwOnMissingMember + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + returns + M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Boolean) + + + + + + + Determines whether a is compiler-generated. + + A . + + true if is compiler-generated, false if it is hand-coded. + + + + Determines whether a is compiler-generated. + + A . + + true if is compiler-generated, false if it is hand-coded. + + + + + + summary + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + typeFullName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + typeName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + param + assemblyName + M:PostSharp.Reflection.ReflectionHelper.ParseAssemblyQualifiedTypeName(System.String,System.String@,System.String@) + + + + + + + Set of static methods providing broader access to assembly metadata than + the System.Reflection namespace. These methods are only + available at build time. + + + + + Gets all custom attributes of a given type in the assembly being currently processed. + + + of the custom attribute. + The set of all custom attributes of type + defined in the assembly being currently processed. + + + + Gets all custom attributes of a given type in the assembly being currently processed and specifies + additional options. + + + of the custom attribute. + Any combination of options and + . + The set of all custom attributes of type (or any type derived + from , if the option + is true) defined in the assembly being currently processed. + + + + Gets all custom attributes on a given element of code, including those who have been added indirectly, for + instance through . + + Element of code (, , ...) whose + custom attributes are requested. + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all custom attributes on a given element of code, including those who have been added indirectly, for + instance through and specifies additional options. + + Element of code (, , ...) whose + custom attributes are requested. + + or . + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all custom attributes of a given type on a given element of code, including those who have been added indirectly, for + instance through and specifies additional options. + + Element of code (, , ...) whose + custom attributes are requested. + + or . + Type of the custom attribute. + The set of all custom attributes added, directly or indirectly, to . + + + + Gets all declarations (, + , or ) used + by the body of a given method or constructor. + + A or . + An array of containing one + item for each declaration used by the body of . + + + + Gets all declarations (, + , or ) used + by the body of a given method or constructor and specifies additional options. + + A or . + + or . + An array of containing one + item for each declaration used by the body of . + + + + + Gets the set of types derived from a given class or implementing a given interface. + + A class or interface. + The set of types derived from or implementing . + + + + Gets the set of types derived from a given class or implementing a given interface. + and specifies additional options. + + A class or interface. + Any valid combination of the options , + (partial type match), and + (deep search). + and + cannot be used together. + The set of types derived from or implementing . + + + + Gets all members (, , or + ) of the assembly being processed of a given type. + + Member type. + The set of all members of type in the assembly being processed + + + + Gets all members (, , or + ) of the assembly being processed of a given type and specifies additional options. + + Member type. + Any combination of the options and + (partial type match). + + The set of all members of type in the assembly being processed + + + + Gets the set of methods and constructors whose body references a given (, + , or ). + + The , + , or + whose references are requested. + An array of containing one + item for each method or constructor whose body references . + + + + + Gets the set of methods and constructors whose body references a given (, + , or ) + and specifies whether + reflection wrappers should be used instead of runtime reflection objects. + + The , + , or + whose references are requested. + Any combination of the options + and (partial type match). + An array of containing one + item for each method or constructor whose body references . + + + + + Determines whether a declaration has a custom attribute of a given type, including those who have been added indirectly, for + instance through . + + Element of code (, , ...) whose + custom attributes are requested. + The type of custom attributes. + + true to consider custom attributes derived from , false to consider + only custom attributes strictly of type . + True if has a custom attribute of type , otherwise false. + + + + + + summary + T:PostSharp.Reflection.ReflectionSearchOptions + + + + + + + No option. + + + + + Include relationships referencing a derived type (instead of exactly that type). + + + + + Include relationships referencing a type signature including the given type (instead of only the given type). + + + + + Use reflection wrappers instead of runtime reflection objects. + Reflection wrappers implement standard reflection classes + (, , ...), but do not require the CLR + to load the type. Reflection wrappers should be used only when the CLR is not able to load the type, + for instance because the type is not valid for runtime execution. This happens for instance when the + type has an extern method implemented after compilation by PostSharp. + + + + + Comparer of reflection types () based on content, not reference. + Supports the unbound generic parameters derived from the class. + + + + Determines whether the specified objects are equal. + The first object of type to compare. + The second object of type to compare. + true if the specified objects are equal; otherwise, false. + + + Determines whether the specified objects are equal. + The first object of type to compare. + The second object of type to compare. + true if the specified objects are equal; otherwise, false. + + + Returns a hash code for the specified object. + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + Returns a hash code for the specified object. + The for which a hash code is to be returned. + + + + param + types + M:PostSharp.Reflection.ReflectionTypeComparer.GetHashCode(System.Type[]) + + + + A hash code for the specified object. + The type of is a reference type and is null. + + + + Gets an instance of that does not perform + substitution of generic parameters. + + An instance of . + + + + Gets an instance of that performs + substitution of generic parameters. + + Array of types to be substituted to the + generic method parameters of the left member. + Array of types to be substituted to the + generic type parameters of the left member. + Array of types to be substituted to the + generic method parameters of the right member. + Array of types to be substituted to the + generic type parameters of the right member. + An instance of . + + + + Enumeration of kinds of state machines. + + + + + The method is not implemented by a state machine. + + + + + Iterator method returning an . + + + + + Iterator method returning an . + + + + + Async method. + + + + + Maps a point in IL instructions to location in source code. + + + + + Gets the end column in the source file. + + + + + Gets the end line in the source file. + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + true if the current object is equal to the parameter; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Serves as the default hash function. + A hash code for the current object. + + + + Gets a symbol meaning that the associated instructions have no source code. + + + + + Determines whether the current symbol means that the associated + instructions have no source code. + + + + + Determines whether the current symbol is a special, non-standard, defined + by PostSharp and supported by PostSharp Tools for Visual Studio. + + + + + Determines whether two sequence points are equal. + + A . + A . + + true if both sequence points are equal, otherwise false. + + + + Determines whether two sequence points are different. + + A . + A . + + true if both sequence points are different, otherwise false. + + + + Document (file of source code) containing the current sequence point. + + + + + Gets the start column in the source file. + + + + + Gets the start line in the source file. + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Represents a inheritance relationship between two types. + + + + + Gets the base type. If the base type is a generic type, this property contains + a generic type instance. + + + + + Gets the derived type. + + + + + Visibility of types and type members. + + + + + Public. + + + + + Family (protected). + + + + + Assembly (internal). + + + + + Family or assembly (protected internal). + + + + + Family and assembly (no C# equivalent: protected types inside the current assembly). + + + + + Private. + + + + + Classes derived from represent unbound generic arguments. + It is a 'trick' to create unbound generic instances, because C# and System.Reflection + does not make it possible. Use the method to bind the unbound + generic arguments to concrete types. + + + + + Binds unbound generic arguments to concrete types. + + A containing unbound generic arguments + (derived from ). + Array of types to which + the unbound generic type arguments should be bound. + Array of types to which + the unbound generic method parameters should be bound. + A where unbound generic arguments have been replaced + by and . + + + + Classes derived from represent unbound generic method parameters. + + + + + Unbound generic method argument. Reference to the 0-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 1-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 2-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 3-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 4-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 5-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 6-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 7-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 8-th generic method argument. + + + + + Initializes a new . + + + + + Unbound generic method argument. Reference to the 9-th generic method argument. + + + + + Initializes a new . + + + + + Classes derived from represent unbound generic type parameters. + + + + + Unbound generic type argument. Reference to the 0-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 1-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 2-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 3-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 4-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 5-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 6-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 7-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 8-th generic type argument. + + + + + Initializes a new . + + + + + Unbound generic type argument. Reference to the 9-th generic type argument. + + + + + Initializes a new . + + + + + Enumeration of address alignments for access to unmanaged memory represented + by , or . + + + + + Default alignment (machine word). + + + + + 1-byte alignment. + + + + + 2-byte alignment. + + + + + 4-byte alignment. + + + + + Expression that takes the address of the operand. Equivalent to the C# operator &. + + + + + Determines whether the returned pointer is a read-only pointer. + + + + + Expression that has two operands, and . + + + + + Gets the left operand. + + + + + Gets the right operand. + + + + + Block containing other blocks or instructions. + + + + + Gets the collection of exception handlers that protect the block. + + + + + Gets the collection of items in the block. + + + + + Gets a string that uniquely identifies the block (inside the current method body) as a possible branching target. + + + + + Gets the collection of local variables defined for the current block. + + + + + Conditional expression, corresponding to the if keyword in C#. + + + + + Gets the condition expression (the return type does not need to be bool. Zero and null values are considered false). + + + + + Gets the expression executed when evaluates to false, zero, or null. + + + + + Gets the expression executed when evaluates to true or a non-null and non-zero vale. + + + + + Expression representing a build-time constant. + + + + + Gets the constant value. + + + + + Expression equivalent to the instruction. + + + + + Gets the alignment of source and destination buffers. + + + + + Gets the destination address. + + + + + Determines whether the buffers can be modified from a different thread. + + + + + Gets the number of bytes to be copied. + + + + + Gets the source address. + + + + + Represents an expression or an instruction. + + + + + Gets the type of the return value of the current expression, + or if the expression does not return anything (i.e. for pure instructions, for instance a goto + or throw instruction). + + + + + Expression that represents a field. + + + + + Gets the field alignment. + + + + + Gets the field. + + + + + Gets the object containing the field, or null if the field is static. + + + + + Determine whether the field is can be written by a different thread than the current one. + + + + + Unconditional branching instruction. + + + + + Instruction block that must receive control. + + + + + Expression equivalent to the instruction. + + + + + Gets the alignment of the buffers. + + + + + Gets the address of the buffer to be initialized. + + + + + Determines whether the buffers can be modified from a different thread. + + + + + Gets the number of bytes to be initialized. + + + + + Expression that represents a local variable. + + + + + Returns an array of all possible assignments of the at this specific point of the program execution. + + List of possible assignments. + + + + Gets the local variable. + + + + + Gets the value of the at this specific point of the program execution, in case this value + can be determined trivially. + + + + + Expression that depends on a metadata declaration. This expression + is used when compiling the typeof, sizeof or default keywords of C#, among others. + + + + + Gets the declaration (, , , ). + + + + + Expression representing a method call. + + + + + Gets the method arguments. + + + + + Gets the type to which the virtual method call is constrained to (see ). + + + + + Gets the instance on which the method is called, or null if the method is static. + + + + + Determines whether the call is a tail call (see ). + + + + + Determines whether the call is a virtual call. + + + + + Gets the called method. + + + + + Expression that represents a C-like pointer to a method. + + + + + Gets the instance on which the method is defined, or null if the method is static. + + + + + Gets the method. + + + + + Expression that returns a new array. + + + + + Gets the type of elements of the array. + + + + + Gets the number of elements in the array. + + + + + Expression that creates a new object by invoking a constructor. + + + + + Gets the arguments passed to the constructor. + + + + + Gets the constructor. + + + + + Expression that represents a method parameter. + + + + + Gets the parameter. + + + + + Sequence of instructions. + + + + + Gets the list of local variables that the current sequence assigns, and the value to which the local variable is assigned when the current sequence + is fully executed. + + + + + Gets the list of sequences that can branch to the current sequence. + + + + + Gets the list of sequences to which the current sequence branch. + + + + + Represents a statement. A statement is the root of an expression tree. + + + + + Expression evaluated by the statement. + + + + + Gets a next sibling of the current expression within . + + + + + Gets a previous sibling of the current expression within . + + + + + Expression that represent a switch (conditional statement with multiple branches). + + + + + Gets the condition expression. + + + + + Gets the list of target blocks. + + + + + Represents an element of the syntax tree representing a method body. + + + + + Gets the parent element in the tree. + + + + + Gets the parent method body. + + + + + Gets the kind of syntax element. + + + + + Represents an exception handler (either catch, finally or filter) attached to a block. + + + + + Gets the type of handled exception, or null if all exceptions are handled. + + + + + Gets the exception filtering block, or null if all exceptions are handled. + + + + + Gets the local variable containing the exception in the . + + + + + Gets the exception handling block. + + + + + Gets the local variable containing the exception in the . + + + + + Expression that represents a local variable. + + + + + Gets the name of the local variable. + + + + + Gets the ordinal of the local variable. + + + + + Gets the type of the local variable. + + + + + Represents the body of a method. + + + + + Gets the method whose body is represented by the current object. + + + + + Gets the root instruction block of the method. + + + + + Service that exposes the method , which allows to decompile + a method and get a AST representation. + + + + + Decompiles a method and gets an AST representation of it. + + The method to decompile. + The required level of abstraction and detail. + AST representing the at the required level of abstraction and detail. + + + + Represents an expression with a single operand. + + + + + Operand of the unary expression. + + + + + Expression that returns the value stored at an address. Equivalent to the C# keyword *. + + + + + Gets the alignment of the value at the address. + + + + + Determines whether if the location at the address is volatile, i.e. if it can be changed + by a different thread than the current one. + + + + + Expression with no operand. + + + + + Represents the assignment of a local variable to an expression. + + + + + Gets the expression to which the local variable is being assigned. + + + + + Gets the local variable being assigned. + + + + + Enumerates the level of abstraction and the level of details produced by the AST decompiler. + + + + + Returns only the block structure (exception handlers). + + + + + Returns the expression tree. + + + + + Enumeration of kinds of syntax elements (). + + + + + Addition (). + + + + + Addition with overflow checking (). + + + + + Bitwise And (). + + + + + Element of an array ( where is the + array and is the index). + + + + + Length of an array (). + + + + + Assignment (). + + + + + Unconditional branch (). + + + + + Local variable expression (). + + + + + Conditional expression (). + + + + + Cast ( where is the destination type). + + + + + Division (). + + + + + Less than (). + + + + + Less than or equal (). + + + + + Modulo (). + + + + + Multiply with overflow checking (). + + + + + Multiply (). + + + + + Greater than (). + + + + + Greater than (). + + + + + Substract (). + + + + + Substract with overflow checking (). + + + + + Parameter (). + + + + + Current object (this keyword in C#, ). + + + + + Referencing operator (& in C#, see ). + + + + + Constant (). + + + + + Equal (). + + + + + Logical negation (). + + + + + Different (). + + + + + Dereferencing operator (* in C#, see ). + + + + + Bitwise Or (). + + + + + Bitwise And (). + + + + + Bitwise shift to left (). + + + + + Bitwise shit to right (). + + + + + Bitwise negation (). + + + + + Safe cast ( where is the destination type). + + + + + Unbox (). + + + + + Throw exception (). + + + + + Field (). + + + + + Box (). + + + + + Create new array (). + + + + + Get value of typed reference (). + + + + + Check that the value is finite (). + + + + + Make typed reference (). + + + + + Get argument list (). + + + + + Get pointer of method (). + + + + + Allocate on local stack (). + + + + + Default value for given type (). + + + + + Copy buffer (). + + + + + Initialize buffer (). + + + + + Load metadata token (). + + + + + Size of type (). + + + + + Get type of typed reference (). + + + + + Convert to integral type with overflow check (). + + + + + Convert to integral type (). + + + + + Method call (). + + + + + Return (). + + + + + Creates new object (). + + + + + Switch (). + + + + + Instruction block (). + + + + + Catch exception handler (). + + + + + Filter exception handler (). + + + + + Finally exception handler (). + + + + + Method body (). + + + + + Local variable definition (). + + + + + Statement (). + + + + + Formats an to a textual representation, for debugging purposes. + + + + + Initializes a new . + + A where the textual representation will be written. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitBinaryExpression(PostSharp.Reflection.Syntax.IBinaryExpression) + + + + + + + Visits an instruction block and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitConditionalExpression(PostSharp.Reflection.Syntax.IConditionalExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitConstantExpression(PostSharp.Reflection.Syntax.IConstantExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitCopyBufferExpression(PostSharp.Reflection.Syntax.ICopyBufferExpression) + + + + + + + Visits an exception handler and, recursively, the and + (if any). + + The exception handler to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitFieldExpression(PostSharp.Reflection.Syntax.IFieldExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeFormatter.VisitUnaryExpression(PostSharp.Reflection.Syntax.IUnaryExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Abstract implementation of a visitor of method bodies ( and ). + + + + + + + PostSharp.Reflection.Syntax.SyntaxTreeVisitor + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitBinaryExpression(PostSharp.Reflection.Syntax.IBinaryExpression) + + + + + + + Visits an instruction block and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitConditionalExpression(PostSharp.Reflection.Syntax.IConditionalExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitConstantExpression(PostSharp.Reflection.Syntax.IConstantExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitCopyBufferExpression(PostSharp.Reflection.Syntax.ICopyBufferExpression) + + + + + + + Visits an exception handler and, recursively, the and + (if any). + + The exception handler to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitFieldExpression(PostSharp.Reflection.Syntax.IFieldExpression) + + + + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits a local variable definition. + + The local variable to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits a method body and, recursively, all syntax nodes. + + The method body to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an instruction block and, recursively, all syntax nodes. + + The statement to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits a syntax element and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + + + returns + M:PostSharp.Reflection.Syntax.SyntaxTreeVisitor.VisitUnaryExpression(PostSharp.Reflection.Syntax.IUnaryExpression) + + + + + + + Visits an expression of type and, recursively, all children elements. + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Visits an expression of type . + + The element to be visited. + + , unless the override returns something else. + + + + Provides instances of classes implementing the interface. You should not use this class in user code. + + + + + Gets an instance of a given class implementing the interface. + + A type implementing the interface. + An instance of type . + + + + Security token passed to the method of the interface. + + + + + Custom attribute that, when applied to an assembly, points to a type in the assembly implementing . + + + + + Initializes a new . + + A type derived from in the current assembly. This type must be public and have + a default constructor. + + + + Gets the activator type. + + + + + Encapsulates dotted strings such as namespaces and type names, so their + serialization by can be optimized. + + + + + Initializes a new . + + Value. + + + + Determines whether the current is equal to another one. + + Another . + + true if the current equals other, otherwise false. + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if and this instance are the same type and represent the same value; otherwise, false. + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Determines whether the current represents a null string. + + + + + Gets an instance of representing a null string. + + + + + Converts a into a . + + A . + The encapsulated by . + + + + Converts a into a . + + A . + A encapsulating . + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + Gets the string encapsulated by the current . + + + + + Exposes a method , which allows to create an instance of a type using the facility. + + + + + Creates an instance of a give type. + + Type of object whose an instance is requested. + A security token. + A new instance of type . + + + + Provides read access to the collection of deserialized arguments. + + + + + Reads a value from the collection, and throws an exception if the value does not exist. + + Argument name. + An optional prefix of , similar to a namespace. + Value type. + The value of the argument named in the given optional . + + + + When deserializing PostSharp aspects, gets the corresponding to the + used at build time. + + + + + Attempts to read a value from the collection, and does not throw an exception if the value does not exist. + + Argument name. + At output, set to the value of the argument named in the given optional . + An optional prefix of , similar to a namespace. + Value type. + + true if the value is defined, otherwise false. + + + + Provides write access to a collection of arguments that need to be serialized. + + + + + When serializing PostSharp access, gets a facility that can be used to serialize metadata (System.Reflection) objects + as MSIL, therefore making them transparent to obfuscation. + + + + + Sets the value of an argument. + + Argument name. + Argument value. The value can be null or must be serializable. + An optional prefix of , similar to a namespace. + + + + Custom attribute that, when applied to a serializable type, specifies that the serializer of this type has + a dependency on another serializer. The custom attribute can be applied at assembly level; it then + applies to all serializable types in this assembly. + + + + + Initializes a new . + + Type of the object to be made serializable. + Serializer type. This type must implement or , + and must have a public default constructor. If is a generic type, if must have the same number + of generic type parameters as , and have a compatible set of constraints. + + + + Gets the type of the object to be made serializable + + + + + Gets the serializer type. + + + + + Interface that can be implemented by serializable classes. + It defines methods and called during serialization. + + + + + Method called after the object has been deserialized. + + + + + Method called before the object is being serialized. + + + + + Defines the semantics of an object serializer. + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Type of the instance to be created. + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Completes the second phase of deserialization by setting fields and other properties. + + The object being deserialized. + Gives access to field values. + + + + Determines whether should be invoked during deserialization. + The value is false if return fully created object, true otherwise. + + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + Gives access to arguments that will be passed to the method during deserialization. + + + + Exposes a method that allows implementations + of the interface to discover serializer types + for each type being serialized. + + + + + Invoked by once for every type that needs to be serialized, + before is invoked. + + Type being serialized. + + + + Defines a method , which creates instances of the interface for + given object types. + + + + + Creates an instance of the interface for a given object type. + + Type of object being serialized or deserialized. + A new instance implementing the interface. + + + + Provides instances of the interface given the object type. + + + + + Gets the instance of + Type of object being serialized or deserialized. If a surrogate type has been specified during serialization, + this parameter is set to the surrogate type during deserialization. + An instance of able to serialize or deserialize , or null + if there is no known serializer factory for this object. + + + + Gets the surrogate type for a given object type. + + Type of the object being serialized. + The surrogate type for , or null (or ) is + does not require a surrogate type. + + + + Gets the next provider in the chain. + + + + + Custom attribute that, when applied to a field of a class annotated with , + specifies that this field should not be serialized. + + + + + + + PostSharp.Serialization.PNonSerializedAttribute + + + + + + + A serializer designed to serialize the internal structure of types with support for cyclic object graphs. + The is very similar in function and design to the , + but is supported on most platforms and does not require full trust. Both formatters have similar usage: + is replaced by and + by . + + + + + Initializes a new . + + A customizing bindings between types and type names, or null to use the default implementation. + A custom implementation of , or null to use the default implementation. + + + + Deserializes a stream. + + A containing a serialized object graph. + The root object of the object graph serialized in . + + + + When deserializing PostSharp aspects, gets the corresponding to the + used at build time. + + + + + When serializing PostSharp access, gets or sets a facility that can be used to serialize metadata (System.Reflection) objects + as MSIL, therefore making them transparent to obfuscation. + + + + + Serializes an object (and the complete graph whose this object is the root) into a . + + The object to serialize. + The stream where needs to be serialized. + + + + Binds types to names and names to types. Used by the . + + + + + Initializes a new instance of the class. + + + + + Gets the name and the assembly name of a given . + + The . + At output, the name of . + At output, the name of . + + + + Gets a given a type name and an assembly name. + + The type name. + The assembly name. + The required . + + + + Exception thrown by the . + + + + + Initializes a new . + + + + + Deserialization constructor. + + + + + + + Initializes a new and specifies the message. + + Message. + + + + Initializes a new and specifies the message and inner exception. + + Message. + Inner exception. + + + + Custom attribute that, when applied to a type, causes PostSharp to generate a serializer for use by the . + + + + + + + PostSharp.Serialization.PSerializableAttribute + + + + + + + Base serializer for all reference types. + + + + + + + PostSharp.Serialization.ReferenceTypeSerializer + + + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Type of the instance to be created. + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Completes the second phase of deserialization by setting fields and other properties. + + The object being deserialized. + Gives access to field values. + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + Gives access to arguments that will be passed to the method during deserialization. + + + + Provides some utility method for the current namespace. + + + + + Checks whether a given can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Checks whether a given , , , , + or can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Checks whether a given can be safely serialized. + + The declaration to be serialized. + + null if can be safely serialized, otherwise an exception where the text describes + the reason why the declaration is not serializable. + + + + Custom attribute that, when applied to a type, specifies its serializer for use by the . + + + + + Initializes a new . + + Serializer type. This type must implement or , + and must have a public default constructor. If is a generic type, if must have the same number + of generic type parameters as the target type, and have a compatible set of constraints. + + + + Gets the serializer type. + + + + + Provides instances of the interface for object types that have been previously registered + using . + + + + + Initializes a new . + + The next provider in the chain, or null if there is none. + + + + + Maps an object type to a serializer type (using generic type parameters). + + Type of the serialized object. + Type of the serializer. + + + + Maps an object type to a serializer type. + + Type of the serialized object. + Type of the serializer (must be derived from ). + + + + Gets the instance that supports built-in types. + + + + + Gets the instance of + Type of object being serialized or deserialized. If a surrogate type has been specified during serialization, + this parameter is set to the surrogate type during deserialization. + An instance of able to serialize or deserialize , or null + if there is no known serializer factory for this object. + + + + Gets the surrogate type for a given object type. + + Type of the object being serialized. + The surrogate type for , or null (or ) is + does not require a surrogate type. + + + + Forbids further changes in the current . + + + + + Gets the next provider in the chain. + + + + + Base serializer for all value types. + + + + + typeparam + T + T:PostSharp.Serialization.ValueTypeSerializer`1 + + + + + + + + + PostSharp.Serialization.ValueTypeSerializer`1 + + + + + + + Converts a value into a given target type. + + Value to be converted. + target type. + The converted to . + + + + Creates an instance of the given type. + + Gives access to arguments required to create the instance. + An instance of type initialized using . + + + + Serializes an object + + + Gives access to arguments that will be passed to the method during deserialization. + + + \ No newline at end of file diff --git a/packages/PostSharp.4.3.25/tools/PostSharp-Tools.exe b/packages/PostSharp.4.3.25/tools/PostSharp-Tools.exe new file mode 100644 index 0000000..ffc79eb Binary files /dev/null and b/packages/PostSharp.4.3.25/tools/PostSharp-Tools.exe differ diff --git a/packages/PostSharp.4.3.25/tools/PostSharp.MSBuild.v4.3.25.Release.dll b/packages/PostSharp.4.3.25/tools/PostSharp.MSBuild.v4.3.25.Release.dll new file mode 100644 index 0000000..d5ae962 Binary files /dev/null and b/packages/PostSharp.4.3.25/tools/PostSharp.MSBuild.v4.3.25.Release.dll differ diff --git a/packages/PostSharp.4.3.25/tools/PostSharp.Version.properties b/packages/PostSharp.4.3.25/tools/PostSharp.Version.properties new file mode 100644 index 0000000..29b19ac --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/PostSharp.Version.properties @@ -0,0 +1,7 @@ + + + + 4.3.25 + 7c192bc + + diff --git a/packages/PostSharp.4.3.25/tools/PostSharp.properties b/packages/PostSharp.4.3.25/tools/PostSharp.properties new file mode 100644 index 0000000..1e7ebef --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/PostSharp.properties @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + <_PostSharp30ImportedTwice Condition="'$(PostSharp30Imported)'=='True'">True + True + + + $(MSBuildProjectDirectory)\$(MSBuildProjectName).$(Configuration).$(Platform).psproj + $(MSBuildProjectDirectory)\$(MSBuildProjectName).$(Configuration).psproj + $(MSBuildProjectDirectory)\$(MSBuildProjectName).psproj + + + + + Release + False + False + $(IntermediateOutputPath)PostSharp + $(IntermediateOutputPath)Before-PostSharp + False + $(SignAssembly) + False + False + True + $(OutDir)$(AssemblyName).pssym + False + False + 4.0 + x64 + x86 + $(PostSharpTargetFrameworkVersion)-$(PostSharpTargetProcessor) + OptimizeForBuildTime + OptimizeForSize + True + Native + PipeServer + True + True + False + False + False + 600000 + 600000 + 60000 + 250 + + + + <_PostSharp30BinDirectoryName>bin.$(PostSharpBuild) + <_PostSharp30MSBuildAssemblyName>PostSharp.MSBuild.v$(PostSharp30Version).$(PostSharpBuild).dll + <_PostSharp30MSBuildAssemblyInternalPath>$(MSBuildThisFileDirectory)\$(_PostSharp30BinDirectoryName)\$(_PostSharp30MSBuildAssemblyName) + + + + + $(MSBuildThisFileDirectory) + $(_PostSharp30MSBuildAssemblyInternalPath) + $(MSBuildThisFileDirectory)\Temp + + + + + $(PROGRAMDATA)\PostSharp + + $(LOCALAPPDATA)\PostSharp + + $(TEMP)\PostSharp + + + + <_ZipKeyFile>$(MSBuildThisFileDirectory)\PostSharp.Compiler.Engine.dll + + $(MSBuildThisFileDirectory) + + + + + <_PostSharpExtractDirectory>$(PostSharpProgramDataDirectory)\$(PostSharp30Version) + $(_PostSharpExtractDirectory) + + + + + $(MSBuildThisFileDirectory)\$(_PostSharp30MSBuildAssemblyName) + + + + False + <_PostSharpDebugType>$(DebugType) + + pdbonly + True + + diff --git a/packages/PostSharp.4.3.25/tools/PostSharp.targets b/packages/PostSharp.4.3.25/tools/PostSharp.targets new file mode 100644 index 0000000..19efc4c --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/PostSharp.targets @@ -0,0 +1,612 @@ + + + + + + + + + + + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_PostSharpTargetFrameworkIdentifier>$(TargetFrameworkIdentifier) + <_PostSharpTargetFrameworkIdentifier Condition="'$(TargetFrameworkIdentifier)'==''">.NETFramework + <_PostSharpTargetFrameworkVersion>$(TargetFrameworkVersion) + <_PostSharpTargetFrameworkVersion Condition="'$(_PostSharpTargetFrameworkIdentifier)'=='.NETFramework' AND ( '$(TargetFrameworkVersion)'=='v2.0' OR '$(TargetFrameworkVersion)'=='v3.0' )">v3.5 + $(_PostSharpTargetFrameworkIdentifier),Version=$(_PostSharpTargetFrameworkVersion) + $(_PostSharpTargetFrameworkIdentifier),$(_PostSharpTargetFrameworkVersion) + + + + + + + <_PostSharpNativeFrameworkIdentifier>.NETFramework + + + + + + + + $(_PostSharpNativeFrameworkIdentifier),Version=$(_PostSharpNativeFrameworkVersion) + $(_PostSharpNativeFrameworkIdentifier),$(_PostSharpNativeFrameworkVersion) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Native + True + + + + + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)\$(SolutionName).$(Configuration).$(Platform).pssln + $(SolutionDir)\$(SolutionName).$(Configuration).pssln + $(SolutionDir)\$(SolutionName).pssln + + + + <_PostSharpProject Include="$(PostSharpSolutionProject)" Condition="$(PostSharpSolutionProject)!=''" /> + <_PostSharpProject Include="$(PostSharpProject)"/> + + + + + + + + + <_PostSharpRequiresVsix Condition="'$(BuildingInsideVisualStudio)'=='True' AND '$(PostSharpSkipVsxCheck)'==''">True + <_PostSharpRequiresVsix Condition="'$(_PostSharpRequiresVsix)' == ''">False + + + + + + + + + + + + + True + + + + + + + + + + + <_DefaultPostSharpHostConfigurationFile>$(IntermediateOutputPath)\PostSharpHost.config + + + + + <_PostSharpBindingRedirectsInputFile Include="$(AppConfig)" Condition="'$(AutoUnifyAssemblyReferences)'!='True'"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_PostSharpSearchPathItem Include="@(ReferencePath->'%(RootDir)%(Directory)')"/> + <_PostSharpSearchPathItem Include="@(ReferenceDependencyPaths->'%(RootDir)%(Directory)')"/> + <_PostSharpSearchPathItem Include="$(TargetFrameworkDirectory)"/> + <_PostSharpSearchPathItem Include="$(PostSharpSearchPath)"/> + <_PostSharpSearchPathItem Include="@(PostSharpSearchPath)"/> + <_PostSharpSearchPathItem Include="@(_PostSharpDiscoveredPlugInSearchPath)"/> + + + + <_PostSharpSearchPathItem Include="@(_PostSharpSolutionSharedSearchPathItem)"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(PostSharp30DependsOn); + PostSharp30ExtractBinaries; + + + $(PostSharpInspectDependsOn); + PostSharp30InspectConstants; + PostSharp30InspectReferences; + PostSharp30DisablePreviousVersions + + + PostSharpInspect; + PostSharp30DefineConstant; + $(CoreCompileDependsOn) + + + PostSharp30TimestampBeforeCompile; + $(CompileDependsOn); + PostSharp30TimestampAfterCompile; + PostSharp30 + + + $(BuildDependsOn); + PostSharp30Verify + + + $(CleanDependsOn); + PostSharp30Clean + + + + + + + + $(PostSharp30DependsOn); + CodeContractInstrument; + CodeContractsPerformCodeAnalysis + + False + + + + + $(PrepareForRunDependsOn); + PostSharp30ChangeAppConfig + + + + + + + + + $(RunCodeAnalysisDependsOn);PostSharp30CopyOutputToCodeAnalysis + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/PostSharp.4.3.25/tools/PostSharp.tasks b/packages/PostSharp.4.3.25/tools/PostSharp.tasks new file mode 100644 index 0000000..9edb8f5 --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/PostSharp.tasks @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/packages/PostSharp.4.3.25/tools/install.ps1 b/packages/PostSharp.4.3.25/tools/install.ps1 new file mode 100644 index 0000000..12b906d --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/install.ps1 @@ -0,0 +1,258 @@ +param($installPath, $toolsPath, $package, $project) + + +function PathToUri([string] $path) +{ + return new-object Uri('file://' + $path.Replace("%","%25").Replace("#","%23").Replace("$","%24").Replace("+","%2B").Replace(",","%2C").Replace("=","%3D").Replace("@","%40").Replace("~","%7E").Replace("^","%5E")) +} + +function UriToPath([System.Uri] $uri) +{ + return [System.Uri]::UnescapeDataString( $uri.ToString() ).Replace([System.IO.Path]::AltDirectorySeparatorChar, [System.IO.Path]::DirectorySeparatorChar) +} + +$targetsFile = [System.IO.Path]::Combine($toolsPath, 'PostSharp.targets') + +# Need to load MSBuild assembly if it's not loaded yet. +Add-Type -AssemblyName 'Microsoft.Build, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' + +# Grab the loaded MSBuild project for the project +$msbuild = [Microsoft.Build.Evaluation.ProjectCollection]::GlobalProjectCollection.GetLoadedProjects($project.FullName) | Select-Object -First 1 + +# Make the path to the targets file relative. +$projectUri = PathToUri $project.FullName +$targetUri = PathToUri $targetsFile + +$relativePath = UriToPath $projectUri.MakeRelativeUri($targetUri) + +# Remove elements from previous installations or versions. +$itemsToRemove = @() +$itemsToRemove += $msbuild.Xml.Properties | Where-Object {$_.Name.ToLowerInvariant() -eq "dontimportpostsharp" } +# $itemsToRemove += $msbuild.Xml.Properties | Where-Object {$_.Name.ToLowerInvariant().EndsWith("postsharpignoredpackages") } # Don't remove this so that it stays during upgrades. +$itemsToRemove += $msbuild.Xml.Imports | Where-Object {$_.Project.ToLowerInvariant().EndsWith("postsharp.targets") } +$itemsToRemove += $msbuild.Xml.Targets | Where-Object {$_.Name.ToLowerInvariant() -eq "ensurepostsharpimported" } + + +if ($itemsToRemove -and $itemsToRemove.length) +{ + foreach ($itemToRemove in $itemsToRemove) + { + $itemToRemove.Parent.RemoveChild($itemToRemove) | out-null + } +} + +# Remove references from PostSharp 1.* and 2.*. +$referencesToRemove = @() +$referencesToRemove += $project.Object.References | Where-Object {$_.Identity.ToLowerInvariant().StartsWith("postsharp.public") } +$referencesToRemove += $project.Object.References | Where-Object {$_.Identity.ToLowerInvariant().StartsWith("postsharp.laos") } + +if ($referencesToRemove -and $referencesToRemove.length) +{ + foreach ($referenceToRemove in $referencesToRemove) + { + $referenceToRemove.Remove() + } +} + + + +# Set property DontImportPostSharp to prevent locally-installed previous versions of PostSharp to interfere. +$msbuild.Xml.AddProperty( "DontImportPostSharp", "True" ) | Out-Null + +# Add import to PostSharp.targets +$import = $msbuild.Xml.AddImport($relativePath) +$import.set_Condition( "Exists('$relativePath')" ) | Out-Null +[string]::Format("Added import of '{0}'.", $relativePath ) + + # Add a target to fail the build when our targets are not imported +$target = $msbuild.Xml.AddTarget("EnsurePostSharpImported") +$target.BeforeTargets = "BeforeBuild" +$target.Condition = "'`$(PostSharp30Imported)' == ''" + +# if the targets don't exist at the time the target runs, package restore didn't run +$errorTask = $target.AddTask("Error") +$errorTask.Condition = "!Exists('$relativePath')" +$errorTask.SetParameter("Text", "This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://www.postsharp.net/links/nuget-restore."); + +# if the targets exist at the time the target runs, package restore ran but the build didn't import the targets. +$errorTask = $target.AddTask("Error") +$errorTask.Condition = "Exists('$relativePath')" +$errorTask.SetParameter("Text", "The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://www.postsharp.net/links/nuget-restore."); + +# For all the assembly references installed by this package - set CopyLocal = true +$pakcageRefs = $package.AssemblyReferences | %{$_.Name} +foreach ($reference in $project.Object.References) +{ + if ($pakcageRefs -contains $reference.Name + ".dll") + { + # To persist the CopyLocal value we have to change it from true to false first + $reference.CopyLocal = $false; + $reference.CopyLocal = $true; + } +} + +$project.Save() +$project.Object.Refresh() + +# SIG # Begin signature block +# MIIdzQYJKoZIhvcNAQcCoIIdvjCCHboCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB +# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR +# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUM66m4nh9OcfxIym8ysLbDzX7 +# 746gghi9MIID7jCCA1egAwIBAgIQfpPr+3zGTlnqS5p31Ab8OzANBgkqhkiG9w0B +# AQUFADCBizELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIG +# A1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUVGhh +# d3RlIENlcnRpZmljYXRpb24xHzAdBgNVBAMTFlRoYXd0ZSBUaW1lc3RhbXBpbmcg +# Q0EwHhcNMTIxMjIxMDAwMDAwWhcNMjAxMjMwMjM1OTU5WjBeMQswCQYDVQQGEwJV +# UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAuBgNVBAMTJ1N5bWFu +# dGVjIFRpbWUgU3RhbXBpbmcgU2VydmljZXMgQ0EgLSBHMjCCASIwDQYJKoZIhvcN +# AQEBBQADggEPADCCAQoCggEBALGss0lUS5ccEgrYJXmRIlcqb9y4JsRDc2vCvy5Q +# WvsUwnaOQwElQ7Sh4kX06Ld7w3TMIte0lAAC903tv7S3RCRrzV9FO9FEzkMScxeC +# i2m0K8uZHqxyGyZNcR+xMd37UWECU6aq9UksBXhFpS+JzueZ5/6M4lc/PcaS3Er4 +# ezPkeQr78HWIQZz/xQNRmarXbJ+TaYdlKYOFwmAUxMjJOxTawIHwHw103pIiq8r3 +# +3R8J+b3Sht/p8OeLa6K6qbmqicWfWH3mHERvOJQoUvlXfrlDqcsn6plINPYlujI +# fKVOSET/GeJEB5IL12iEgF1qeGRFzWBGflTBE3zFefHJwXECAwEAAaOB+jCB9zAd +# BgNVHQ4EFgQUX5r1blzMzHSa1N197z/b7EyALt0wMgYIKwYBBQUHAQEEJjAkMCIG +# CCsGAQUFBzABhhZodHRwOi8vb2NzcC50aGF3dGUuY29tMBIGA1UdEwEB/wQIMAYB +# Af8CAQAwPwYDVR0fBDgwNjA0oDKgMIYuaHR0cDovL2NybC50aGF3dGUuY29tL1Ro +# YXd0ZVRpbWVzdGFtcGluZ0NBLmNybDATBgNVHSUEDDAKBggrBgEFBQcDCDAOBgNV +# HQ8BAf8EBAMCAQYwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0y +# MDQ4LTEwDQYJKoZIhvcNAQEFBQADgYEAAwmbj3nvf1kwqu9otfrjCR27T4IGXTdf +# plKfFo3qHJIJRG71betYfDDo+WmNI3MLEm9Hqa45EfgqsZuwGsOO61mWAK3ODE2y +# 0DGmCFwqevzieh1XTKhlGOl5QGIllm7HxzdqgyEIjkHq3dlXPx13SYcqFgZepjhq +# IhKjURmDfrYwggSjMIIDi6ADAgECAhAOz/Q4yP6/NW4E2GqYGxpQMA0GCSqGSIb3 +# DQEBBQUAMF4xCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3Jh +# dGlvbjEwMC4GA1UEAxMnU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNlcyBD +# QSAtIEcyMB4XDTEyMTAxODAwMDAwMFoXDTIwMTIyOTIzNTk1OVowYjELMAkGA1UE +# BhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMTQwMgYDVQQDEytT +# eW1hbnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIFNpZ25lciAtIEc0MIIBIjAN +# BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAomMLOUS4uyOnREm7Dv+h8GEKU5Ow +# mNutLA9KxW7/hjxTVQ8VzgQ/K/2plpbZvmF5C1vJTIZ25eBDSyKV7sIrQ8Gf2Gi0 +# jkBP7oU4uRHFI/JkWPAVMm9OV6GuiKQC1yoezUvh3WPVF4kyW7BemVqonShQDhfu +# ltthO0VRHc8SVguSR/yrrvZmPUescHLnkudfzRC5xINklBm9JYDh6NIipdC6Anqh +# d5NbZcPuF3S8QYYq3AhMjJKMkS2ed0QfaNaodHfbDlsyi1aLM73ZY8hJnTrFxeoz +# C9Lxoxv0i77Zs1eLO94Ep3oisiSuLsdwxb5OgyYI+wu9qU+ZCOEQKHKqzQIDAQAB +# o4IBVzCCAVMwDAYDVR0TAQH/BAIwADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDAO +# BgNVHQ8BAf8EBAMCB4AwcwYIKwYBBQUHAQEEZzBlMCoGCCsGAQUFBzABhh5odHRw +# Oi8vdHMtb2NzcC53cy5zeW1hbnRlYy5jb20wNwYIKwYBBQUHMAKGK2h0dHA6Ly90 +# cy1haWEud3Muc3ltYW50ZWMuY29tL3Rzcy1jYS1nMi5jZXIwPAYDVR0fBDUwMzAx +# oC+gLYYraHR0cDovL3RzLWNybC53cy5zeW1hbnRlYy5jb20vdHNzLWNhLWcyLmNy +# bDAoBgNVHREEITAfpB0wGzEZMBcGA1UEAxMQVGltZVN0YW1wLTIwNDgtMjAdBgNV +# HQ4EFgQURsZpow5KFB7VTNpSYxc/Xja8DeYwHwYDVR0jBBgwFoAUX5r1blzMzHSa +# 1N197z/b7EyALt0wDQYJKoZIhvcNAQEFBQADggEBAHg7tJEqAEzwj2IwN3ijhCcH +# bxiy3iXcoNSUA6qGTiWfmkADHN3O43nLIWgG2rYytG2/9CwmYzPkSWRtDebDZw73 +# BaQ1bHyJFsbpst+y6d0gxnEPzZV03LZc3r03H0N45ni1zSgEIKOq8UvEiCmRDoDR +# EfzdXHZuT14ORUZBbg2w6jiasTraCXEQ/Bx5tIB7rGn0/Zy2DBYr8X9bCT2bW+IW +# yhOBbQAuOA2oKY8s4bL0WqkBrxWcLC9JG9siu8P+eJRRw4axgohd8D20UaF5Mysu +# e7ncIAkTcetqGVvP6KUwVyyJST+5z3/Jvz4iaGNTmr1pdKzFHTx/kuDDvBzYBHUw +# ggTTMIIDu6ADAgECAhAY2tGeJn3ou0ohWM3MaztKMA0GCSqGSIb3DQEBBQUAMIHK +# MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsT +# FlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlT +# aWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZl +# cmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRo +# b3JpdHkgLSBHNTAeFw0wNjExMDgwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +# CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl +# cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlTaWdu +# LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT +# aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp +# dHkgLSBHNTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK8kCAgpejWe +# YAyq50s7Ttx8vDxFHLsr4P4pAvlXCKNkhRUn9fGtyDGJXSLoKqqmQrOP+LlVt7G3 +# S7P+j34HV+zvQ9tmYhVhz2ANpNje+ODDYgg9VBPrScpZVIUm5SuPG5/r9aGRwjNJ +# 2ENjalJL0o/ocFFN0Ylpe8dw9rPcEnTbe11LVtOWvxV3obD0oiXyrxySZxjl9AYE +# 75C55ADk3Tq1Gf8CuvQ87uCL6zeL7PTXrPL28D2v3XWRMxkdHEDLdCQZIZPZFP6s +# KlLHj9UESeSNY0eIPGmDy/5HvSt+T8WVrg6d1NFDwGdz4xQIfuU/n3O4MwrPXT80 +# h5aK7lPoJRUCAwEAAaOBsjCBrzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +# AwIBBjBtBggrBgEFBQcBDARhMF+hXaBbMFkwVzBVFglpbWFnZS9naWYwITAfMAcG +# BSsOAwIaBBSP5dMahqyNjmvDz4Bq1EgYLHsZLjAlFiNodHRwOi8vbG9nby52ZXJp +# c2lnbi5jb20vdnNsb2dvLmdpZjAdBgNVHQ4EFgQUf9Nlp8Ld7LvwMAnzQzn6Aq8z +# MTMwDQYJKoZIhvcNAQEFBQADggEBAJMkSjBfYs/YGpgvPercmS29d/aleSI47MSn +# oHgSrWIORXBkxeeXZi2YCX5fr9bMKGXyAaoIGkfe+fl8kloIaSAN2T5tbjwNbtjm +# BpFAGLn4we3f20Gq4JYgyc1kFTiByZTuooQpCxNvjtsM3SUC26SLGUTSQXoFaUpY +# T2DKfoJqCwKqJRc5tdt/54RlKpWKvYbeXoEWgy0QzN79qIIqbSgfDQvE5ecaJhnh +# 9BFvELWV/OdCBTLbzp1RXii2noXTW++lfUVAco63DmsOBvszNUhxuJ0ni8RlXw2G +# dpxEevaVXPZdMggzpFS2GD9oXPJCSoU4VINf0egs8qwR1qjtY2owggU7MIIEI6AD +# AgECAhBtVZzZIav2n7DtBg0fBzVhMA0GCSqGSIb3DQEBBQUAMIG0MQswCQYDVQQG +# EwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWdu +# IFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczov +# L3d3dy52ZXJpc2lnbi5jb20vcnBhIChjKTEwMS4wLAYDVQQDEyVWZXJpU2lnbiBD +# bGFzcyAzIENvZGUgU2lnbmluZyAyMDEwIENBMB4XDTE0MDYxMjAwMDAwMFoXDTE3 +# MDgxMDIzNTk1OVowbTELMAkGA1UEBhMCQ1oxDzANBgNVBAgTBlByYWd1ZTEPMA0G +# A1UEBxMGUHJhZ3VlMR0wGwYDVQQKFBRTaGFycENyYWZ0ZXJzIHMuci5vLjEdMBsG +# A1UEAxQUU2hhcnBDcmFmdGVycyBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IB +# DwAwggEKAoIBAQC+b1Bbdq+VGj6EJcdDpYvUSiSDkZJZTocyzilpOHyt2zUNY69y +# wv6yRwbF7Ik7wC+MQCULUQdl11/LnAufJcydQsSsKG1qfW2MSozrcB/s11GW5uQW +# bOMkwIiTc+dHIeakuTiYw9un+DmCSqT9+CUNqadsMHSsBGrA2NmyKf307qkxxoFq +# cZhqHaS7EPf+luvU6FZuU8G4l2D+P1WzfhOcGod4gUFlBWdy8cT6bB3WwFgXnKLg +# ajUn+MdPbextgatezBQ/FEr1O0KYI/oymKOqpaqMiqxD76ZRqayPBlkPPZCcBVTl +# gnIgzAzCsjmo1xrJ3hTjrxYE2gJUmh8TXZK5AgMBAAGjggGNMIIBiTAJBgNVHRME +# AjAAMA4GA1UdDwEB/wQEAwIHgDArBgNVHR8EJDAiMCCgHqAchhpodHRwOi8vc2Yu +# c3ltY2IuY29tL3NmLmNybDBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYI +# KwYBBQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkW +# F2h0dHBzOi8vZC5zeW1jYi5jb20vcnBhMBMGA1UdJQQMMAoGCCsGAQUFBwMDMFcG +# CCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3NmLnN5bWNkLmNvbTAm +# BggrBgEFBQcwAoYaaHR0cDovL3NmLnN5bWNiLmNvbS9zZi5jcnQwHwYDVR0jBBgw +# FoAUz5mp6nsm9EvJjo/X8AUm7+PSp50wHQYDVR0OBBYEFEI5jc+chSpGcqlmayYz +# SF3yHjQ1MBEGCWCGSAGG+EIBAQQEAwIEEDAWBgorBgEEAYI3AgEbBAgwBgEBAAEB +# /zANBgkqhkiG9w0BAQUFAAOCAQEApG4uGyuFmvEbeoSDvt+5U04XH8Nlq9iscLMe +# eijHVJA6gFi3kzqgEPdshu4UDT7+CQunXXqsx8daGnksxiYMtj1OOVMlLWUKTnFq +# K2mbIEbM14RaTg/GIcpJPj3xnIn+sobQiaWISQs30oG7FByla7yzTAGXNM721F0/ +# O6owD9dmCV42QvVzzTh9aJDtxyQtFd1ZW8v4IhgCFtLMpOcE4PQvn/tJXP+ExLC6 +# 0RiwE/kgN/3hxiopoOZrVB5r/lbCPI93PC2nQ6QYr+EXn2siWTMCJ3o+C0uRV8Pe +# 8yFrdDMlNkevIAHqNxCVayNXKRO7fKmQLcbREcKaZUn9z6Wa5zCCBgowggTyoAMC +# AQICEFIA5aolVvwahu2WydRLM8cwDQYJKoZIhvcNAQEFBQAwgcoxCzAJBgNVBAYT +# AlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24g +# VHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDIwMDYgVmVyaVNpZ24sIEluYy4g +# LSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xh +# c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEc1 +# MB4XDTEwMDIwODAwMDAwMFoXDTIwMDIwNzIzNTk1OVowgbQxCzAJBgNVBAYTAlVT +# MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1 +# c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0IGh0dHBzOi8vd3d3 +# LnZlcmlzaWduLmNvbS9ycGEgKGMpMTAxLjAsBgNVBAMTJVZlcmlTaWduIENsYXNz +# IDMgQ29kZSBTaWduaW5nIDIwMTAgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +# ggEKAoIBAQD1I0tepdeKuzLp1Ff37+THJn6tGZj+qJ19lPY2axDXdYEwfwRof8sr +# dR7NHQiM32mUpzejnHuA4Jnh7jdNX847FO6G1ND1JzW8JQs4p4xjnRejCKWrsPvN +# amKCTNUh2hvZ8eOEO4oqT4VbkAFPyad2EH8nA3y+rn59wd35BbwbSJxp58CkPDxB +# AD7fluXF5JRx1lUBxwAmSkA8taEmqQynbYCOkCV7z78/HOsvlvrlh3fGtVayejtU +# MFMb32I0/x7R9FqTKIXlTBdOflv9pJOZf9/N76R17+8V9kfn+Bly2C40Gqa0p0x+ +# vbtPDD1X8TDWpjaO1oB21xkupc1+NC2JAgMBAAGjggH+MIIB+jASBgNVHRMBAf8E +# CDAGAQH/AgEAMHAGA1UdIARpMGcwZQYLYIZIAYb4RQEHFwMwVjAoBggrBgEFBQcC +# ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL2NwczAqBggrBgEFBQcCAjAeGhxo +# dHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhMA4GA1UdDwEB/wQEAwIBBjBtBggr +# BgEFBQcBDARhMF+hXaBbMFkwVzBVFglpbWFnZS9naWYwITAfMAcGBSsOAwIaBBSP +# 5dMahqyNjmvDz4Bq1EgYLHsZLjAlFiNodHRwOi8vbG9nby52ZXJpc2lnbi5jb20v +# dnNsb2dvLmdpZjA0BgNVHR8ELTArMCmgJ6AlhiNodHRwOi8vY3JsLnZlcmlzaWdu +# LmNvbS9wY2EzLWc1LmNybDA0BggrBgEFBQcBAQQoMCYwJAYIKwYBBQUHMAGGGGh0 +# dHA6Ly9vY3NwLnZlcmlzaWduLmNvbTAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYB +# BQUHAwMwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFZlcmlTaWduTVBLSS0yLTgw +# HQYDVR0OBBYEFM+Zqep7JvRLyY6P1/AFJu/j0qedMB8GA1UdIwQYMBaAFH/TZafC +# 3ey78DAJ80M5+gKvMzEzMA0GCSqGSIb3DQEBBQUAA4IBAQBWIuY0pMRhy0i5Aa1W +# qGQP2YyRxLvMDOWteqAif99HOEotbNF/cRp87HCpsfBP5A8MU/oVXv50mEkkhYEm +# HJEUR7BMY4y7oTTUxkXoDYUmcwPQqYxkbdxxkuZFBWAVWVE5/FgUa/7UpO15awgM +# QXLnNyIGCb4j6T9Emh7pYZ3MsZBc/D3SjaxCPWU21LQ9QCiPmxDPIybMSyDLkB9d +# jEw0yjzY5TfWb6UgvTTrJtmuDefFmvehtCGRM2+G6Fi7JXx0Dlj+dRtjP84xfJuP +# G5aexVN2hFucrZH6rO2Tul3IIVPCglNjrxINUIcRGz1UUpaKLJw9khoImgUux5Ol +# SJHTMYIEejCCBHYCAQEwgckwgbQxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJp +# U2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkG +# A1UECxMyVGVybXMgb2YgdXNlIGF0IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9y +# cGEgKGMpMTAxLjAsBgNVBAMTJVZlcmlTaWduIENsYXNzIDMgQ29kZSBTaWduaW5n +# IDIwMTAgQ0ECEG1VnNkhq/afsO0GDR8HNWEwCQYFKw4DAhoFAKB4MBgGCisGAQQB +# gjcCAQwxCjAIoAKAAKECgAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYK +# KwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFAdEh3ZE +# hh44H4/871oMpKUR3H/oMA0GCSqGSIb3DQEBAQUABIIBALdtQ44NIggtpItEiIwM +# RaQYnzb/tj/t78r4ei5KXAPqlr1k393TmO4pr1f57VuwjfU2+K8PjxpaY4s4MZLv +# zDJnwLSREhfrBZp1/6gwg6APJ/4++GWUuP/eU33b1xg2l0vGYCU/Dy4ASDmQ8bli +# SyCAFAZluibui72CZhtJulmGNtq4myI8PhZ20k6DqhVUj3d6MwQ2c/dold+EjoYO +# ky04g9Wy6yemh82b1oBVMTyXoehF9bq/KqG+djr91ERbtsdjIkxcopwVyk8Q9GmZ +# TPmQprETirTLWU3ACCvWL7u+RmvEr2UbtocHCtpOViwsl8d4o279+aCWjpis3msg +# bF6hggILMIICBwYJKoZIhvcNAQkGMYIB+DCCAfQCAQEwcjBeMQswCQYDVQQGEwJV +# UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAuBgNVBAMTJ1N5bWFu +# dGVjIFRpbWUgU3RhbXBpbmcgU2VydmljZXMgQ0EgLSBHMgIQDs/0OMj+vzVuBNhq +# mBsaUDAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkq +# hkiG9w0BCQUxDxcNMTYxMjIxMTgwMzE5WjAjBgkqhkiG9w0BCQQxFgQU29trKiym +# j2bGCIUhe+ZmOYg8b9swDQYJKoZIhvcNAQEBBQAEggEAH/Rs39jOSzFhZBHQnBrF +# 8G2NpHPyPXpgIlaEd2rbyYQeXhG2gtg7FL1dE/xAcR3hE9p+SrRTT6PYJa1CikHw +# ghtNcrPMiJUX2QAeC/RJpW588V+Ez0qIaCba51T4q1iaWRrHZeepghkobRQU0sZ9 +# AVtPoE+ZslFdnTU6O+3kGMUcs3TKqtSvnAtRQpmDn02FVstz5jLstuBJXjUnW1a/ +# 21a1Ocs1nwPXl4vw+qiAwqRykzWtRwm4vgZm5+lC3ad+sGQ8bC0NyQXFmeaPsnmi +# ZReO6uHsn3VfU7YoIKL5X6967Z9g04uNBWWtPi5HeHs72UnXQOmlEL6vlEI+1JZF +# Uw== +# SIG # End signature block diff --git a/packages/PostSharp.4.3.25/tools/uninstall.ps1 b/packages/PostSharp.4.3.25/tools/uninstall.ps1 new file mode 100644 index 0000000..d1cddf8 --- /dev/null +++ b/packages/PostSharp.4.3.25/tools/uninstall.ps1 @@ -0,0 +1,190 @@ +param($installPath, $toolsPath, $package, $project) + +$targetsFile = [System.IO.Path]::Combine($toolsPath, 'PostSharp.targets') + +# Need to load MSBuild assembly if it's not loaded yet. +Add-Type -AssemblyName 'Microsoft.Build, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' + +# Grab the loaded MSBuild project for the project +$msbuild = [Microsoft.Build.Evaluation.ProjectCollection]::GlobalProjectCollection.GetLoadedProjects($project.FullName) | Select-Object -First 1 + +$itemsToRemove = @() + + +# Remove stuff from the project. +$itemsToRemove += $msbuild.Xml.Properties | Where-Object {$_.Name.ToLowerInvariant() -eq "dontimportpostsharp" } +$itemsToRemove += $msbuild.Xml.Imports | Where-Object { $_.Project.ToLowerInvariant().EndsWith("postsharp.targets") } +$itemsToRemove += $msbuild.Xml.Targets | Where-Object {$_.Name.ToLowerInvariant() -eq "ensurepostsharpimported" } + +if ($itemsToRemove -and $itemsToRemove.length) +{ + foreach ($itemToRemove in $itemsToRemove) + { + $itemToRemove.Parent.RemoveChild($itemToRemove) | out-null + } + + $project.Save() + $project.Object.Refresh() +} +# SIG # Begin signature block +# MIIdzQYJKoZIhvcNAQcCoIIdvjCCHboCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB +# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR +# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUEq48Mye7NbaUKdF5WvNuLohX +# ypCgghi9MIID7jCCA1egAwIBAgIQfpPr+3zGTlnqS5p31Ab8OzANBgkqhkiG9w0B +# AQUFADCBizELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIG +# A1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUVGhh +# d3RlIENlcnRpZmljYXRpb24xHzAdBgNVBAMTFlRoYXd0ZSBUaW1lc3RhbXBpbmcg +# Q0EwHhcNMTIxMjIxMDAwMDAwWhcNMjAxMjMwMjM1OTU5WjBeMQswCQYDVQQGEwJV +# UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAuBgNVBAMTJ1N5bWFu +# dGVjIFRpbWUgU3RhbXBpbmcgU2VydmljZXMgQ0EgLSBHMjCCASIwDQYJKoZIhvcN +# AQEBBQADggEPADCCAQoCggEBALGss0lUS5ccEgrYJXmRIlcqb9y4JsRDc2vCvy5Q +# WvsUwnaOQwElQ7Sh4kX06Ld7w3TMIte0lAAC903tv7S3RCRrzV9FO9FEzkMScxeC +# i2m0K8uZHqxyGyZNcR+xMd37UWECU6aq9UksBXhFpS+JzueZ5/6M4lc/PcaS3Er4 +# ezPkeQr78HWIQZz/xQNRmarXbJ+TaYdlKYOFwmAUxMjJOxTawIHwHw103pIiq8r3 +# +3R8J+b3Sht/p8OeLa6K6qbmqicWfWH3mHERvOJQoUvlXfrlDqcsn6plINPYlujI +# fKVOSET/GeJEB5IL12iEgF1qeGRFzWBGflTBE3zFefHJwXECAwEAAaOB+jCB9zAd +# BgNVHQ4EFgQUX5r1blzMzHSa1N197z/b7EyALt0wMgYIKwYBBQUHAQEEJjAkMCIG +# CCsGAQUFBzABhhZodHRwOi8vb2NzcC50aGF3dGUuY29tMBIGA1UdEwEB/wQIMAYB +# Af8CAQAwPwYDVR0fBDgwNjA0oDKgMIYuaHR0cDovL2NybC50aGF3dGUuY29tL1Ro +# YXd0ZVRpbWVzdGFtcGluZ0NBLmNybDATBgNVHSUEDDAKBggrBgEFBQcDCDAOBgNV +# HQ8BAf8EBAMCAQYwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0y +# MDQ4LTEwDQYJKoZIhvcNAQEFBQADgYEAAwmbj3nvf1kwqu9otfrjCR27T4IGXTdf +# plKfFo3qHJIJRG71betYfDDo+WmNI3MLEm9Hqa45EfgqsZuwGsOO61mWAK3ODE2y +# 0DGmCFwqevzieh1XTKhlGOl5QGIllm7HxzdqgyEIjkHq3dlXPx13SYcqFgZepjhq +# IhKjURmDfrYwggSjMIIDi6ADAgECAhAOz/Q4yP6/NW4E2GqYGxpQMA0GCSqGSIb3 +# DQEBBQUAMF4xCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3Jh +# dGlvbjEwMC4GA1UEAxMnU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNlcyBD +# QSAtIEcyMB4XDTEyMTAxODAwMDAwMFoXDTIwMTIyOTIzNTk1OVowYjELMAkGA1UE +# BhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMTQwMgYDVQQDEytT +# eW1hbnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIFNpZ25lciAtIEc0MIIBIjAN +# BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAomMLOUS4uyOnREm7Dv+h8GEKU5Ow +# mNutLA9KxW7/hjxTVQ8VzgQ/K/2plpbZvmF5C1vJTIZ25eBDSyKV7sIrQ8Gf2Gi0 +# jkBP7oU4uRHFI/JkWPAVMm9OV6GuiKQC1yoezUvh3WPVF4kyW7BemVqonShQDhfu +# ltthO0VRHc8SVguSR/yrrvZmPUescHLnkudfzRC5xINklBm9JYDh6NIipdC6Anqh +# d5NbZcPuF3S8QYYq3AhMjJKMkS2ed0QfaNaodHfbDlsyi1aLM73ZY8hJnTrFxeoz +# C9Lxoxv0i77Zs1eLO94Ep3oisiSuLsdwxb5OgyYI+wu9qU+ZCOEQKHKqzQIDAQAB +# o4IBVzCCAVMwDAYDVR0TAQH/BAIwADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDAO +# BgNVHQ8BAf8EBAMCB4AwcwYIKwYBBQUHAQEEZzBlMCoGCCsGAQUFBzABhh5odHRw +# Oi8vdHMtb2NzcC53cy5zeW1hbnRlYy5jb20wNwYIKwYBBQUHMAKGK2h0dHA6Ly90 +# cy1haWEud3Muc3ltYW50ZWMuY29tL3Rzcy1jYS1nMi5jZXIwPAYDVR0fBDUwMzAx +# oC+gLYYraHR0cDovL3RzLWNybC53cy5zeW1hbnRlYy5jb20vdHNzLWNhLWcyLmNy +# bDAoBgNVHREEITAfpB0wGzEZMBcGA1UEAxMQVGltZVN0YW1wLTIwNDgtMjAdBgNV +# HQ4EFgQURsZpow5KFB7VTNpSYxc/Xja8DeYwHwYDVR0jBBgwFoAUX5r1blzMzHSa +# 1N197z/b7EyALt0wDQYJKoZIhvcNAQEFBQADggEBAHg7tJEqAEzwj2IwN3ijhCcH +# bxiy3iXcoNSUA6qGTiWfmkADHN3O43nLIWgG2rYytG2/9CwmYzPkSWRtDebDZw73 +# BaQ1bHyJFsbpst+y6d0gxnEPzZV03LZc3r03H0N45ni1zSgEIKOq8UvEiCmRDoDR +# EfzdXHZuT14ORUZBbg2w6jiasTraCXEQ/Bx5tIB7rGn0/Zy2DBYr8X9bCT2bW+IW +# yhOBbQAuOA2oKY8s4bL0WqkBrxWcLC9JG9siu8P+eJRRw4axgohd8D20UaF5Mysu +# e7ncIAkTcetqGVvP6KUwVyyJST+5z3/Jvz4iaGNTmr1pdKzFHTx/kuDDvBzYBHUw +# ggTTMIIDu6ADAgECAhAY2tGeJn3ou0ohWM3MaztKMA0GCSqGSIb3DQEBBQUAMIHK +# MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsT +# FlZlcmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlT +# aWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZl +# cmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRo +# b3JpdHkgLSBHNTAeFw0wNjExMDgwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +# CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl +# cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlTaWdu +# LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT +# aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp +# dHkgLSBHNTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK8kCAgpejWe +# YAyq50s7Ttx8vDxFHLsr4P4pAvlXCKNkhRUn9fGtyDGJXSLoKqqmQrOP+LlVt7G3 +# S7P+j34HV+zvQ9tmYhVhz2ANpNje+ODDYgg9VBPrScpZVIUm5SuPG5/r9aGRwjNJ +# 2ENjalJL0o/ocFFN0Ylpe8dw9rPcEnTbe11LVtOWvxV3obD0oiXyrxySZxjl9AYE +# 75C55ADk3Tq1Gf8CuvQ87uCL6zeL7PTXrPL28D2v3XWRMxkdHEDLdCQZIZPZFP6s +# KlLHj9UESeSNY0eIPGmDy/5HvSt+T8WVrg6d1NFDwGdz4xQIfuU/n3O4MwrPXT80 +# h5aK7lPoJRUCAwEAAaOBsjCBrzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +# AwIBBjBtBggrBgEFBQcBDARhMF+hXaBbMFkwVzBVFglpbWFnZS9naWYwITAfMAcG +# BSsOAwIaBBSP5dMahqyNjmvDz4Bq1EgYLHsZLjAlFiNodHRwOi8vbG9nby52ZXJp +# c2lnbi5jb20vdnNsb2dvLmdpZjAdBgNVHQ4EFgQUf9Nlp8Ld7LvwMAnzQzn6Aq8z +# MTMwDQYJKoZIhvcNAQEFBQADggEBAJMkSjBfYs/YGpgvPercmS29d/aleSI47MSn +# oHgSrWIORXBkxeeXZi2YCX5fr9bMKGXyAaoIGkfe+fl8kloIaSAN2T5tbjwNbtjm +# BpFAGLn4we3f20Gq4JYgyc1kFTiByZTuooQpCxNvjtsM3SUC26SLGUTSQXoFaUpY +# T2DKfoJqCwKqJRc5tdt/54RlKpWKvYbeXoEWgy0QzN79qIIqbSgfDQvE5ecaJhnh +# 9BFvELWV/OdCBTLbzp1RXii2noXTW++lfUVAco63DmsOBvszNUhxuJ0ni8RlXw2G +# dpxEevaVXPZdMggzpFS2GD9oXPJCSoU4VINf0egs8qwR1qjtY2owggU7MIIEI6AD +# AgECAhBtVZzZIav2n7DtBg0fBzVhMA0GCSqGSIb3DQEBBQUAMIG0MQswCQYDVQQG +# EwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWdu +# IFRydXN0IE5ldHdvcmsxOzA5BgNVBAsTMlRlcm1zIG9mIHVzZSBhdCBodHRwczov +# L3d3dy52ZXJpc2lnbi5jb20vcnBhIChjKTEwMS4wLAYDVQQDEyVWZXJpU2lnbiBD +# bGFzcyAzIENvZGUgU2lnbmluZyAyMDEwIENBMB4XDTE0MDYxMjAwMDAwMFoXDTE3 +# MDgxMDIzNTk1OVowbTELMAkGA1UEBhMCQ1oxDzANBgNVBAgTBlByYWd1ZTEPMA0G +# A1UEBxMGUHJhZ3VlMR0wGwYDVQQKFBRTaGFycENyYWZ0ZXJzIHMuci5vLjEdMBsG +# A1UEAxQUU2hhcnBDcmFmdGVycyBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IB +# DwAwggEKAoIBAQC+b1Bbdq+VGj6EJcdDpYvUSiSDkZJZTocyzilpOHyt2zUNY69y +# wv6yRwbF7Ik7wC+MQCULUQdl11/LnAufJcydQsSsKG1qfW2MSozrcB/s11GW5uQW +# bOMkwIiTc+dHIeakuTiYw9un+DmCSqT9+CUNqadsMHSsBGrA2NmyKf307qkxxoFq +# cZhqHaS7EPf+luvU6FZuU8G4l2D+P1WzfhOcGod4gUFlBWdy8cT6bB3WwFgXnKLg +# ajUn+MdPbextgatezBQ/FEr1O0KYI/oymKOqpaqMiqxD76ZRqayPBlkPPZCcBVTl +# gnIgzAzCsjmo1xrJ3hTjrxYE2gJUmh8TXZK5AgMBAAGjggGNMIIBiTAJBgNVHRME +# AjAAMA4GA1UdDwEB/wQEAwIHgDArBgNVHR8EJDAiMCCgHqAchhpodHRwOi8vc2Yu +# c3ltY2IuY29tL3NmLmNybDBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYI +# KwYBBQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkW +# F2h0dHBzOi8vZC5zeW1jYi5jb20vcnBhMBMGA1UdJQQMMAoGCCsGAQUFBwMDMFcG +# CCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3NmLnN5bWNkLmNvbTAm +# BggrBgEFBQcwAoYaaHR0cDovL3NmLnN5bWNiLmNvbS9zZi5jcnQwHwYDVR0jBBgw +# FoAUz5mp6nsm9EvJjo/X8AUm7+PSp50wHQYDVR0OBBYEFEI5jc+chSpGcqlmayYz +# SF3yHjQ1MBEGCWCGSAGG+EIBAQQEAwIEEDAWBgorBgEEAYI3AgEbBAgwBgEBAAEB +# /zANBgkqhkiG9w0BAQUFAAOCAQEApG4uGyuFmvEbeoSDvt+5U04XH8Nlq9iscLMe +# eijHVJA6gFi3kzqgEPdshu4UDT7+CQunXXqsx8daGnksxiYMtj1OOVMlLWUKTnFq +# K2mbIEbM14RaTg/GIcpJPj3xnIn+sobQiaWISQs30oG7FByla7yzTAGXNM721F0/ +# O6owD9dmCV42QvVzzTh9aJDtxyQtFd1ZW8v4IhgCFtLMpOcE4PQvn/tJXP+ExLC6 +# 0RiwE/kgN/3hxiopoOZrVB5r/lbCPI93PC2nQ6QYr+EXn2siWTMCJ3o+C0uRV8Pe +# 8yFrdDMlNkevIAHqNxCVayNXKRO7fKmQLcbREcKaZUn9z6Wa5zCCBgowggTyoAMC +# AQICEFIA5aolVvwahu2WydRLM8cwDQYJKoZIhvcNAQEFBQAwgcoxCzAJBgNVBAYT +# AlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24g +# VHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDIwMDYgVmVyaVNpZ24sIEluYy4g +# LSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xh +# c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEc1 +# MB4XDTEwMDIwODAwMDAwMFoXDTIwMDIwNzIzNTk1OVowgbQxCzAJBgNVBAYTAlVT +# MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1 +# c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0IGh0dHBzOi8vd3d3 +# LnZlcmlzaWduLmNvbS9ycGEgKGMpMTAxLjAsBgNVBAMTJVZlcmlTaWduIENsYXNz +# IDMgQ29kZSBTaWduaW5nIDIwMTAgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +# ggEKAoIBAQD1I0tepdeKuzLp1Ff37+THJn6tGZj+qJ19lPY2axDXdYEwfwRof8sr +# dR7NHQiM32mUpzejnHuA4Jnh7jdNX847FO6G1ND1JzW8JQs4p4xjnRejCKWrsPvN +# amKCTNUh2hvZ8eOEO4oqT4VbkAFPyad2EH8nA3y+rn59wd35BbwbSJxp58CkPDxB +# AD7fluXF5JRx1lUBxwAmSkA8taEmqQynbYCOkCV7z78/HOsvlvrlh3fGtVayejtU +# MFMb32I0/x7R9FqTKIXlTBdOflv9pJOZf9/N76R17+8V9kfn+Bly2C40Gqa0p0x+ +# vbtPDD1X8TDWpjaO1oB21xkupc1+NC2JAgMBAAGjggH+MIIB+jASBgNVHRMBAf8E +# CDAGAQH/AgEAMHAGA1UdIARpMGcwZQYLYIZIAYb4RQEHFwMwVjAoBggrBgEFBQcC +# ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL2NwczAqBggrBgEFBQcCAjAeGhxo +# dHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhMA4GA1UdDwEB/wQEAwIBBjBtBggr +# BgEFBQcBDARhMF+hXaBbMFkwVzBVFglpbWFnZS9naWYwITAfMAcGBSsOAwIaBBSP +# 5dMahqyNjmvDz4Bq1EgYLHsZLjAlFiNodHRwOi8vbG9nby52ZXJpc2lnbi5jb20v +# dnNsb2dvLmdpZjA0BgNVHR8ELTArMCmgJ6AlhiNodHRwOi8vY3JsLnZlcmlzaWdu +# LmNvbS9wY2EzLWc1LmNybDA0BggrBgEFBQcBAQQoMCYwJAYIKwYBBQUHMAGGGGh0 +# dHA6Ly9vY3NwLnZlcmlzaWduLmNvbTAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYB +# BQUHAwMwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFZlcmlTaWduTVBLSS0yLTgw +# HQYDVR0OBBYEFM+Zqep7JvRLyY6P1/AFJu/j0qedMB8GA1UdIwQYMBaAFH/TZafC +# 3ey78DAJ80M5+gKvMzEzMA0GCSqGSIb3DQEBBQUAA4IBAQBWIuY0pMRhy0i5Aa1W +# qGQP2YyRxLvMDOWteqAif99HOEotbNF/cRp87HCpsfBP5A8MU/oVXv50mEkkhYEm +# HJEUR7BMY4y7oTTUxkXoDYUmcwPQqYxkbdxxkuZFBWAVWVE5/FgUa/7UpO15awgM +# QXLnNyIGCb4j6T9Emh7pYZ3MsZBc/D3SjaxCPWU21LQ9QCiPmxDPIybMSyDLkB9d +# jEw0yjzY5TfWb6UgvTTrJtmuDefFmvehtCGRM2+G6Fi7JXx0Dlj+dRtjP84xfJuP +# G5aexVN2hFucrZH6rO2Tul3IIVPCglNjrxINUIcRGz1UUpaKLJw9khoImgUux5Ol +# SJHTMYIEejCCBHYCAQEwgckwgbQxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJp +# U2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkG +# A1UECxMyVGVybXMgb2YgdXNlIGF0IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9y +# cGEgKGMpMTAxLjAsBgNVBAMTJVZlcmlTaWduIENsYXNzIDMgQ29kZSBTaWduaW5n +# IDIwMTAgQ0ECEG1VnNkhq/afsO0GDR8HNWEwCQYFKw4DAhoFAKB4MBgGCisGAQQB +# gjcCAQwxCjAIoAKAAKECgAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYK +# KwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFGhuXTM9 +# 7MGPaLjUDgP9NMoYfspXMA0GCSqGSIb3DQEBAQUABIIBAJJPQThOF6A2B4I3ChPK +# SdSTcQll/zw0j4YfMvdQVvzZoJtl7o42GiklcN/Pc3o0nqtIUG62WyN2Hp/pOZzN +# /N+kjdSsJ1ytnlAElP3fx9jNf8YqqcVXpRanMk4ACUcM3gUF6ak6E/3c7QlMd9l3 +# Amrtbb0qYT76xEos7QKU5zIXdoU0VAe8tIMCxTGJKF+r6hTKNKsUbMPB6MCP5lH8 +# eA586DztVHTuA+VC+rGuuh8hOn+9DBL4CozOmFBnLQPhyW4L3WzrWw+C4wiEXDYT +# MzYkeG5Z7TZslo3a3BL5EMwie/tOCFw5tLJk2GruxW4HnS6/8SSNE+wcLPmTw+2x +# AoqhggILMIICBwYJKoZIhvcNAQkGMYIB+DCCAfQCAQEwcjBeMQswCQYDVQQGEwJV +# UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAuBgNVBAMTJ1N5bWFu +# dGVjIFRpbWUgU3RhbXBpbmcgU2VydmljZXMgQ0EgLSBHMgIQDs/0OMj+vzVuBNhq +# mBsaUDAJBgUrDgMCGgUAoF0wGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkq +# hkiG9w0BCQUxDxcNMTYxMjIxMTgwMzIxWjAjBgkqhkiG9w0BCQQxFgQUnveUsAGr +# J6Y5XSC4v9hD+/iLWUUwDQYJKoZIhvcNAQEBBQAEggEAQ5qtrgFvmGa+CgLIDnqD +# hdCfuMqsFx914FqZuSzXMw7CHmB+nxAZUiCn9aj9+Ww6WpZiFfsDezHfBi0RpusG +# utL40VeMu5f0wwKwmAmKAsb0D8DQLe/MFOmU6Ywcz8N9Fl9uVjDJrunDn2GdDPM5 +# B/w0Eu8d89irTQxyGGF3BfVAetsaITuCxRcLJlNcvSRxfZwM+a20Skd8rwmBgdSy +# Lfcd6NVAEKGVgAtauUdNvUpqOo7QVtZRCnrHendjJgLRnxgKexGzV7tBpioupXt2 +# JHtsyCoPDEJtUmZLfk0BFj0yDKDcy29vmHX1IiWsp4s1oCin8PkQSM71ZWtZN9ae +# /Q== +# SIG # End signature block