llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: Ebuka Ezike (da-viper) <details> <summary>Changes</summary> lldb.SBValue.format should map to GetFormat instead of GetName --- Full diff: https://github.com/llvm/llvm-project/pull/216802.diff 3 Files Affected: - (modified) lldb/bindings/interface/SBValueExtensions.i (+1-1) - (modified) lldb/test/API/python_api/value/TestValueAPI.py (+16) - (modified) lldb/test/API/python_api/value/main.c (+1) ``````````diff diff --git a/lldb/bindings/interface/SBValueExtensions.i b/lldb/bindings/interface/SBValueExtensions.i index 6d583aa28da3a..1748eaec44da9 100644 --- a/lldb/bindings/interface/SBValueExtensions.i +++ b/lldb/bindings/interface/SBValueExtensions.i @@ -70,7 +70,7 @@ STRING_EXTENSION_OUTSIDE(SBValue) type = property(GetType, None, doc='''A read only property that returns a lldb.SBType object that represents the type for this value.''') size = property(GetByteSize, None, doc='''A read only property that returns the size in bytes of this value.''') is_in_scope = property(IsInScope, None, doc='''A read only property that returns a boolean value that indicates whether this value is currently lexically in scope.''') - format = property(GetName, SetFormat, doc='''A read/write property that gets/sets the format used for lldb.SBValue().GetValue() for this value. See enumerations that start with "lldb.eFormat".''') + format = property(GetFormat, SetFormat, doc='''A read/write property that gets/sets the format used for lldb.SBValue().GetValue() for this value. See enumerations that start with "lldb.eFormat".''') value = property(GetValue, SetValueFromCString, doc='''A read/write property that gets/sets value from a string.''') value_type = property(GetValueType, None, doc='''A read only property that returns an lldb enumeration value (see enumerations that start with "lldb.eValueType") that represents the type of this value (local, argument, global, register, etc.).''') changed = property(GetValueDidChange, None, doc='''A read only property that returns a boolean value that indicates if this value has changed since it was last updated.''') diff --git a/lldb/test/API/python_api/value/TestValueAPI.py b/lldb/test/API/python_api/value/TestValueAPI.py index beb3a6fce65f7..cdc8c46723803 100644 --- a/lldb/test/API/python_api/value/TestValueAPI.py +++ b/lldb/test/API/python_api/value/TestValueAPI.py @@ -273,6 +273,22 @@ def test(self): a_null_int_ptr = frame0.FindVariable("a_null_int_ptr") self.assertEqual(a_null_int_ptr.GetValue(), "0x0") + a_val: lldb.SBValue = frame0.FindVariable("a_val") + self.assertTrue(a_val) + self.assertEqual(a_val.value, "10") + self.assertEqual(a_val.GetValue(), "10") + + a_val.SetFormat(lldb.eFormatBoolean) + self.assertEqual(a_val.format, lldb.eFormatBoolean) + self.assertEqual(a_val.GetFormat(), lldb.eFormatBoolean) + self.assertEqual(a_val.value.lower(), "true") + + # Verify the setter. + a_val.format = lldb.eFormatHex + self.assertEqual(a_val.format, lldb.eFormatHex) + self.assertEqual(a_val.GetFormat(), lldb.eFormatHex) + self.assertEqual(a_val.value.lower(), "0xa") + # Check that dereferencing a null pointer produces reasonable results # (does not crash). self.assertEqual( diff --git a/lldb/test/API/python_api/value/main.c b/lldb/test/API/python_api/value/main.c index cdb2aa2f6147b..5798207242fd0 100644 --- a/lldb/test/API/python_api/value/main.c +++ b/lldb/test/API/python_api/value/main.c @@ -51,6 +51,7 @@ int main (int argc, char const *argv[]) int32_t sinthex = 0xE0A35F10; int i; + int a_val = 10; MyInt a = 12345; struct MyStruct s = {11, 22}; struct MyBiggerStruct f = { 33, 44, 55 }; `````````` </details> https://github.com/llvm/llvm-project/pull/216802 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
