[Libreoffice-commits] core.git: solenv/vs

Mike Kaganski mike.kaganski at collabora.com
Tue Nov 14 16:18:07 UTC 2017


 solenv/vs/LibreOffice.natvis |   86 ++++++++++++++++++++++++++++---------------
 1 file changed, 57 insertions(+), 29 deletions(-)

New commits:
commit 2d42c1a8e90fbbef11d03cb6d1d206c2216ab554
Author: Mike Kaganski <mike.kaganski at collabora.com>
Date:   Tue Nov 14 19:14:22 2017 +0300

    LibreOffice.natvis: update visualizers
    
    Change-Id: I48e13a16deb14869a2fb37822650f44ca7162406
    Reviewed-on: https://gerrit.libreoffice.org/44727
    Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
    Tested-by: Mike Kaganski <mike.kaganski at collabora.com>

diff --git a/solenv/vs/LibreOffice.natvis b/solenv/vs/LibreOffice.natvis
index 56e1e80ae48b..0277cfafee87 100644
--- a/solenv/vs/LibreOffice.natvis
+++ b/solenv/vs/LibreOffice.natvis
@@ -105,15 +105,11 @@
   <Type Name="_sal_Sequence">
     <DisplayString Condition="nElements == 0">_sal_Sequence (empty)</DisplayString>
     <DisplayString>_sal_Sequence of {nElements,d} elements</DisplayString>
-    <Expand>
-      <Item Name="[size]">nElements,d</Item>
-    </Expand>
   </Type>
   <Type Name="com::sun::star::uno::Sequence < * >">
     <DisplayString Condition="_pSequence->nElements == 0">Sequence (empty)</DisplayString>
     <DisplayString>Sequence of {_pSequence->nElements,d} {"$T1",sb}</DisplayString>
     <Expand>
-      <Item Name="[size]">_pSequence->nElements,d</Item>
       <ArrayItems>
         <Size>_pSequence->nElements</Size>
         <ValuePointer>reinterpret_cast < const $T1 * >( _pSequence->elements )</ValuePointer>
@@ -123,8 +119,6 @@
   <Type Name="BigPtrArray">
     <DisplayString>{{{m_nSize} nodes}}</DisplayString>
     <Expand>
-      <Item Name="[size]">m_nSize</Item>
-
       <CustomListItems>
         <!-- Visualiser needs to know the type of variable (including pointer type).
              If later we try to assign an incompatible value, visualiser will error out.
@@ -164,44 +158,44 @@
     </Expand>
   </Type>
   <Type Name="SwNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{Node}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{Node}}</DisplayString>
     <Expand>
       <Item Name="Nodes">static_cast < SwNodes* >(m_pBlock->pBigArr)</Item>
     </Expand>
   </Type>
   <Type Name="SwEndNode">
-    <DisplayString Condition="m_pStartOfSection != nullptr">[{m_pBlock->nStart + m_nOffset}] {{EndNode}} - for {*m_pStartOfSection}</DisplayString>
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{EndNode}}</DisplayString>
+    <DisplayString Condition="m_pStartOfSection != nullptr">[{m_pBlock->nStart + m_nOffset,d}] {{EndNode}} - for {*m_pStartOfSection}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{EndNode}}</DisplayString>
   </Type>
   <Type Name="SwStartNode">
-    <DisplayString Condition="m_eStartNodeType == 0">[{m_pBlock->nStart + m_nOffset}] {{NormalStartNode}}</DisplayString>
-    <DisplayString Condition="m_eStartNodeType == 1">[{m_pBlock->nStart + m_nOffset}] {{TableBoxStartNode}}</DisplayString>
-    <DisplayString Condition="m_eStartNodeType == 2">[{m_pBlock->nStart + m_nOffset}] {{FlyStartNode}}</DisplayString>
-    <DisplayString Condition="m_eStartNodeType == 3">[{m_pBlock->nStart + m_nOffset}] {{FootnoteStartNode}}</DisplayString>
-    <DisplayString Condition="m_eStartNodeType == 4">[{m_pBlock->nStart + m_nOffset}] {{HeaderStartNode}}</DisplayString>
-    <DisplayString Condition="m_eStartNodeType == 5">[{m_pBlock->nStart + m_nOffset}] {{FooterStartNode}}</DisplayString>
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{StartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 0">[{m_pBlock->nStart + m_nOffset,d}] {{NormalStartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 1">[{m_pBlock->nStart + m_nOffset,d}] {{TableBoxStartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 2">[{m_pBlock->nStart + m_nOffset,d}] {{FlyStartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 3">[{m_pBlock->nStart + m_nOffset,d}] {{FootnoteStartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 4">[{m_pBlock->nStart + m_nOffset,d}] {{HeaderStartNode}}</DisplayString>
+    <DisplayString Condition="m_eStartNodeType == 5">[{m_pBlock->nStart + m_nOffset,d}] {{FooterStartNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{StartNode}}</DisplayString>
   </Type>
   <Type Name="SwContentNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{ContentNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{ContentNode}}</DisplayString>
   </Type>
   <Type Name="SwOLENode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{OLENode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{OLENode}}</DisplayString>
   </Type>
   <Type Name="SwGrfNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{GrfNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{GrfNode}}</DisplayString>
   </Type>
   <Type Name="SwSectionNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{SectionNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{SectionNode}}</DisplayString>
   </Type>
   <Type Name="SwTableNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{TableNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{TableNode}}</DisplayString>
   </Type>
   <Type Name="SwDummySectionNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{DummySectionNode}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{DummySectionNode}}</DisplayString>
   </Type>
   <Type Name="SwTextNode">
-    <DisplayString>[{m_pBlock->nStart + m_nOffset}] {{TextNode: {m_Text}}}</DisplayString>
+    <DisplayString>[{m_pBlock->nStart + m_nOffset,d}] {{TextNode: {m_Text}}}</DisplayString>
   </Type>
   <Type Name="SwNodeIndex">
     <DisplayString>{{{*m_pNode}}}</DisplayString>
@@ -219,7 +213,6 @@
     <DisplayString Condition="m_Array.node_count == 0">empty</DisplayString>
     <DisplayString>Size: {m_Array.node_count}</DisplayString>
     <Expand>
-      <Item Name="[size]">m_Array.node_count</Item>
       <IndexListItems>
         <Size>m_Array.node_count</Size>
         <ValueNode>**reinterpret_cast < value_type* > (&static_cast < ByPos::node_type* > (static_cast < ByPos::node_type::trampoline* > (m_PosIndex.ptrs.spc.data_[$i]))->space)</ValueNode>
@@ -271,17 +264,40 @@
   <Type Name="SfxUsrAnyItem">
     <DisplayString>{{which={m_nWhich,x}}} {aValue}</DisplayString>
   </Type>
+  <Type Name="SvxFontItem">
+    <DisplayString>{{which={m_nWhich,x}}} Font family: {aFamilyName,sub}</DisplayString>
+  </Type>
+  <Type Name="SfxInt16Item">
+    <DisplayString>{{which={m_nWhich,x}}} Int16: {m_nValue}</DisplayString>
+  </Type>
+  <Type Name="SfxGrabBagItem">
+    <DisplayString>
+      {{which={m_nWhich,x}}} GrabBag {{size={m_aMap._Mypair._Myval2._Myval2._Mysize,d}}}
+    </DisplayString>
+    <Expand>
+      <ExpandedItem >m_aMap</ExpandedItem>
+    </Expand>
+  </Type>
   <Type Name="SfxPoolItem">
     <DisplayString>{{which={m_nWhich,x}}}</DisplayString>
   </Type>
   <Type Name="SfxItemSet">
     <DisplayString>{{size={m_nCount,d}}}</DisplayString>
     <Expand>
-      <Item Name="[size]">m_nCount,d</Item>
-      <IndexListItems>
-        <Size>m_nCount</Size>
-        <ValueNode>*(m_pItems[$i])</ValueNode>
-      </IndexListItems>
+      <CustomListItems>
+        <Variable Name='pCurItem' InitialValue='m_pItems'/>
+        <Variable Name='pCurRange' InitialValue='m_pWhichRanges'/>
+        <Variable Name='nCurWhich' InitialValue='0'/>
+        <Loop Condition='*pCurRange'>
+          <Exec>nCurWhich = *pCurRange</Exec>
+          <Loop Condition='nCurWhich<=*(pCurRange+1)'>
+            <Item Condition='*pCurItem'>**pCurItem</Item>
+            <Exec>++pCurItem</Exec>
+            <Exec>++nCurWhich</Exec>
+          </Loop>
+          <Exec>pCurRange+=2</Exec>
+        </Loop>
+      </CustomListItems>
       <Synthetic Name="Which Ranges">
         <Expand>
           <CustomListItems>
@@ -299,4 +315,16 @@
       <Item Condition="m_pParent != nullptr" Name="Parent">*m_pParent</Item>
     </Expand>
   </Type>
+  <Type Name="sax_fastparser::FastAttributeList">
+    <DisplayString>{{size={maAttributeTokens.size(),d}}}</DisplayString>
+    <Expand>
+      <CustomListItems>
+        <Variable Name='i' InitialValue='0'/>
+        <Loop Condition='i < maAttributeTokens.size()'>
+          <Item Name='{maAttributeTokens[i],x}'>mpChunk	+ maAttributeValues[i]</Item>
+          <Exec>++i</Exec>
+        </Loop>
+      </CustomListItems>
+    </Expand>
+  </Type>
 </AutoVisualizer>


More information about the Libreoffice-commits mailing list