Mercurial > minori
view dep/pugixml/scripts/natvis/pugixml.natvis @ 187:9613d72b097e
*: multiple performance improvements
like marking `static const` when it makes sense...
date: change old stupid heap-based method to a structure which should
make copying the thing actually make a copy.
also many performance-based changes, like removing the std::tie
dependency and forward-declaring nlohmann json
*: replace every instance of QString::fromUtf8 to Strings::ToQString.
the main difference is that our function will always convert exactly
what is in the string, while some other times it would only convert
up to the nearest NUL byte
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Wed, 06 Dec 2023 13:43:54 -0500 |
| parents | d10b6c6b432e |
| children |
line wrap: on
line source
<?xml version="1.0" encoding="utf-8"?> <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010"> <Type Name="pugi::xml_node"> <DisplayString Condition="_root">{_root}</DisplayString> <DisplayString Condition="!_root">none</DisplayString> <Expand> <ExpandedItem Condition="_root">_root</ExpandedItem> </Expand> </Type> <Type Name="pugi::xml_node_struct"> <DisplayString Condition="name && value">{(pugi::xml_node_type)(header & 0xf),en} name={name,na} value={value,na}</DisplayString> <DisplayString Condition="name">{(pugi::xml_node_type)(header & 0xf),en} name={name,na}</DisplayString> <DisplayString Condition="value">{(pugi::xml_node_type)(header & 0xf),en} value={value,na}</DisplayString> <DisplayString>{(pugi::xml_node_type)(header & 0xf),en}</DisplayString> <Expand> <Item Name="value" Condition="value">value,na</Item> <Synthetic Name="attributes" Condition="first_attribute"> <Expand> <CustomListItems> <Variable Name="curr" InitialValue="first_attribute" /> <Loop Condition="curr"> <Item Name="{curr->name,na}">curr,view(child)na</Item> <Exec>curr = curr->next_attribute</Exec> </Loop> </CustomListItems> </Expand> </Synthetic> <LinkedListItems> <HeadPointer>first_child</HeadPointer> <NextPointer>next_sibling</NextPointer> <ValueNode>this,na</ValueNode> </LinkedListItems> </Expand> </Type> <Type Name="pugi::xml_attribute"> <DisplayString Condition="_attr">{_attr}</DisplayString> <DisplayString Condition="!_attr">none</DisplayString> <Expand> <ExpandedItem Condition="_attr">_attr</ExpandedItem> </Expand> </Type> <Type Name="pugi::xml_attribute_struct"> <DisplayString ExcludeView="child">{name,na} = {value,na}</DisplayString> <DisplayString>{value,na}</DisplayString> <Expand> <Item Name="name">name,na</Item> <Item Name="value">value,na</Item> </Expand> </Type> <Type Name="pugi::xpath_node"> <DisplayString Condition="_node._root && _attribute._attr">{_node,na} "{_attribute._attr->name,na}"="{_attribute._attr->value,na}"</DisplayString> <DisplayString Condition="_node._root">{_node,na}</DisplayString> <DisplayString Condition="_attribute._attr">{_attribute}</DisplayString> <DisplayString>empty</DisplayString> <Expand HideRawView="1"> <ExpandedItem Condition="_node._root && !_attribute._attr">_node</ExpandedItem> <ExpandedItem Condition="!_node._root && _attribute._attr">_attribute</ExpandedItem> <Item Name="node" Condition="_node._root && _attribute._attr">_node,na</Item> <Item Name="attribute" Condition="_node._root && _attribute._attr">_attribute,na</Item> </Expand> </Type> <Type Name="pugi::xpath_node_set"> <Expand> <Item Name="type">_type</Item> <ArrayItems> <Size>_end - _begin</Size> <ValuePointer>_begin</ValuePointer> </ArrayItems> </Expand> </Type> </AutoVisualizer>
