mirror of
https://github.com/nlohmann/json.git
synced 2026-10-06 06:30:31 +00:00
Add a natvis fallback visualizer for detail::json_default_base
Squashed onto develop from: - Add a type in the natvis template for detail::json_default_base - Document the json_default_base natvis fallback and regenerate natvis - Match json_default_base in both its current and 3.12.0 namespace Co-authored-by: Mihnea Magheru <sakuntalle@yahoo.com> Signed-off-by: Mihnea Magheru <sakuntalle@yahoo.com> Signed-off-by: Niels Lohmann <mail@nlohmann.me>
This commit is contained in:
co-authored by
Mihnea Magheru
parent
8a142bc436
commit
decbb6e758
+22572
File diff suppressed because it is too large
Load Diff
@@ -36,5 +36,31 @@
|
|||||||
</Expand>
|
</Expand>
|
||||||
</Type>
|
</Type>
|
||||||
|
|
||||||
|
<!-- Fallback for when the basic_json entry above does not match: json_default_base is the (empty) default
|
||||||
|
base class of basic_json, and base class visualizers are inherited by derived types and evaluated
|
||||||
|
against the derived object, so m_data is accessible here. The class lives in {{ ns }} after
|
||||||
|
3.12.0 (#5238) and in {{ ns }}::detail up to 3.12.0, so both names are listed. -->
|
||||||
|
{% for default_base in ['json_default_base', 'detail::json_default_base'] %}
|
||||||
|
<Type Name="{{ ns }}::{{ default_base }}">
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::null">null</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::object">{*(m_data.m_value.object)}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::array">{*(m_data.m_value.array)}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::string">{*(m_data.m_value.string)}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::boolean">{m_data.m_value.boolean}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::number_integer">{m_data.m_value.number_integer}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::number_unsigned">{m_data.m_value.number_unsigned}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::number_float">{m_data.m_value.number_float}</DisplayString>
|
||||||
|
<DisplayString Condition="m_data.m_type == {{ ns }}::detail::value_t::discarded">discarded</DisplayString>
|
||||||
|
<Expand>
|
||||||
|
<ExpandedItem Condition="m_data.m_type == {{ ns }}::detail::value_t::object">
|
||||||
|
*(m_data.m_value.object),view(simple)
|
||||||
|
</ExpandedItem>
|
||||||
|
<ExpandedItem Condition="m_data.m_type == {{ ns }}::detail::value_t::array">
|
||||||
|
*(m_data.m_value.array),view(simple)
|
||||||
|
</ExpandedItem>
|
||||||
|
</Expand>
|
||||||
|
</Type>
|
||||||
|
|
||||||
|
{% endfor %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</AutoVisualizer>
|
</AutoVisualizer>
|
||||||
|
|||||||
Reference in New Issue
Block a user