aboutsummaryrefslogtreecommitdiff
path: root/toolsrc
diff options
context:
space:
mode:
authorOfek <ofekshilon@gmail.com>2018-08-01 20:58:25 +0300
committerRobert Schumacher <roschuma@microsoft.com>2018-08-01 10:58:25 -0700
commit2815c4fb66988ad708ed9b08d71554a094f8945f (patch)
treef3d5744ef89e8c248e1ddddf1d70b0ad923fcba6 /toolsrc
parent5a04ee0290ec963efde5bb604d96d1aac6d69b17 (diff)
downloadvcpkg-2815c4fb66988ad708ed9b08d71554a094f8945f.tar.gz
vcpkg-2815c4fb66988ad708ed9b08d71554a094f8945f.zip
Initial addition of native visualizer, to improve debugging experience. (#3906)
Diffstat (limited to 'toolsrc')
-rw-r--r--toolsrc/vcpkg.natvis35
-rw-r--r--toolsrc/vcpkg.sln5
2 files changed, 40 insertions, 0 deletions
diff --git a/toolsrc/vcpkg.natvis b/toolsrc/vcpkg.natvis
new file mode 100644
index 000000000..7f9c7f61e
--- /dev/null
+++ b/toolsrc/vcpkg.natvis
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
+ <Type Name="vcpkg::ErrorHolder&lt;std::error_code&gt;">
+ <DisplayString Condition="m_err._Myval!=0">{m_err}</DisplayString>
+ <DisplayString Condition="m_err._Myval==0"></DisplayString>
+ </Type>
+ <Type Name="vcpkg::ErrorHolder&lt;*&gt;">
+ <DisplayString Condition="m_is_error==true">{m_err}</DisplayString>
+ <DisplayString Condition="m_is_error==false"></DisplayString>
+ </Type>
+ <Type Name="vcpkg::ExpectedT&lt;*,std::error_code&gt;">
+ <DisplayString Condition="m_s.m_err._Myval==0">val: {m_t}</DisplayString>
+ <DisplayString Condition="m_s.m_err._Myval!=0">err: {m_s}</DisplayString>
+ </Type>
+ <Type Name="vcpkg::ExpectedT&lt;*,*&gt;">
+ <DisplayString Condition="m_s.m_is_error==false">val: {m_t}</DisplayString>
+ <DisplayString Condition="m_s.m_is_error==true">err: {m_s}</DisplayString>
+ </Type>
+ <Type Name="vcpkg::Optional&lt;*&gt;">
+ <DisplayString Condition="m_base.m_is_present==true">{m_base.m_t}</DisplayString>
+ <DisplayString Condition="m_base.m_is_present==false">empty</DisplayString>
+ </Type>
+ <Type Name="vcpkg::TripletInstance">
+ <DisplayString>{*(std::string*)this}</DisplayString>
+ </Type>
+ <Type Name="vcpkg::Triplet">
+ <DisplayString>{m_instance}</DisplayString>
+ </Type>
+ <Type Name="vcpkg::StringLiteral">
+ <DisplayString>{m_cstr}</DisplayString>
+ </Type>
+ <Type Name="std::experimental::filesystem::v1::path">
+ <DisplayString>{_Mystr}</DisplayString>
+ </Type>
+</AutoVisualizer> \ No newline at end of file
diff --git a/toolsrc/vcpkg.sln b/toolsrc/vcpkg.sln
index 9a998e214..6b92c973b 100644
--- a/toolsrc/vcpkg.sln
+++ b/toolsrc/vcpkg.sln
@@ -47,6 +47,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "cmake", "cmake", "{A0122231
..\scripts\cmake\vcpkg_install_meson.cmake = ..\scripts\cmake\vcpkg_install_meson.cmake
EndProjectSection
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{BCE555DF-F471-4ACC-98E5-76CBE8E8F79E}"
+ ProjectSection(SolutionItems) = preProject
+ vcpkg.natvis = vcpkg.natvis
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64