about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWalnut <39544927+Walnut356@users.noreply.github.com>2025-01-10 22:21:49 -0600
committerWalnut <39544927+Walnut356@users.noreply.github.com>2025-01-10 22:21:49 -0600
commitf725ad7f1d7485ee78feae1db03a37245682b7b0 (patch)
treeeb18bd1f9078ee627629f63afbfc816d7099d3df
parent4f595334f5771b28d85c46f29859d2e48af270b5 (diff)
downloadrust-f725ad7f1d7485ee78feae1db03a37245682b7b0.tar.gz
rust-f725ad7f1d7485ee78feae1db03a37245682b7b0.zip
more robust tuple summary
-rw-r--r--src/etc/lldb_providers.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/etc/lldb_providers.py b/src/etc/lldb_providers.py
index 063db7abb3c..d928f1d0cf5 100644
--- a/src/etc/lldb_providers.py
+++ b/src/etc/lldb_providers.py
@@ -1,4 +1,5 @@
 import sys
+from typing import List
 
 from lldb import (
     SBData,
@@ -710,9 +711,18 @@ class MSVCTupleSyntheticProvider:
 
 
 def TupleSummaryProvider(valobj: SBValue, _dict: LLDBOpaque):
-    output: str = sequence_formatter("(", valobj, dict)
-    output += ")"
-    return output
+    output: List[str] = []
+
+    for i in range(0, valobj.GetNumChildren()):
+        child: SBValue = valobj.GetChildAtIndex(i)
+        summary = child.summary
+        if summary is None:
+            summary = child.value
+            if summary is None:
+                summary = "{...}"
+        output.append(summary)
+
+    return "(" + ", ".join(output) + ")"
 
 
 class StdVecSyntheticProvider: