Author: jdevlieghere Date: Wed Sep 4 11:59:10 2019 New Revision: 370953 URL: http://llvm.org/viewvc/llvm-project?rev=370953&view=rev Log: [Python] Implement truth testing for lldb.value
Python 3 calls __bool__() instead of __len__() and lldb.value only implemented the __len__ method. This adds the __bool__() implementation. Differential revision: https://reviews.llvm.org/D67183 Modified: lldb/trunk/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py lldb/trunk/scripts/Python/python-extensions.swig Modified: lldb/trunk/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py?rev=370953&r1=370952&r2=370953&view=diff ============================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py (original) +++ lldb/trunk/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py Wed Sep 4 11:59:10 2019 @@ -160,6 +160,10 @@ class ValueAPITestCase(TestBase): val_i.GetType()).AddressOf(), VALID_VARIABLE) + # Check that lldb.value implements truth testing. + self.assertFalse(lldb.value(frame0.FindVariable('bogus'))) + self.assertTrue(lldb.value(frame0.FindVariable('uinthex'))) + self.assertTrue(int(lldb.value(frame0.FindVariable('uinthex'))) == 3768803088, 'uinthex == 3768803088') self.assertTrue(int(lldb.value(frame0.FindVariable('sinthex'))) Modified: lldb/trunk/scripts/Python/python-extensions.swig URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/python-extensions.swig?rev=370953&r1=370952&r2=370953&view=diff ============================================================================== --- lldb/trunk/scripts/Python/python-extensions.swig (original) +++ lldb/trunk/scripts/Python/python-extensions.swig Wed Sep 4 11:59:10 2019 @@ -980,6 +980,9 @@ class value(object): def __nonzero__(self): return self.sbvalue.__nonzero__() + def __bool__(self): + return self.sbvalue.__bool__() + def __str__(self): return self.sbvalue.__str__() _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits