libstdc++: Format Python code according to PEP8

These files were filtered through autopep8 to reformat them more
conventionally.

libstdc++-v3/ChangeLog:

	* python/libstdcxx/v6/printers.py: Reformat.
	* python/libstdcxx/v6/xmethods.py: Likewise.
This commit is contained in:
Jonathan Wakely 2023-09-11 21:47:00 +01:00
parent af6d089b4d
commit e08559271b
2 changed files with 446 additions and 263 deletions

File diff suppressed because it is too large Load diff

View file

@ -21,12 +21,15 @@ import re
matcher_name_prefix = 'libstdc++::'
def get_bool_type():
return gdb.lookup_type('bool')
def get_std_size_type():
return gdb.lookup_type('std::size_t')
class LibStdCxxXMethod(gdb.xmethod.XMethod):
def __init__(self, name, worker_class):
gdb.xmethod.XMethod.__init__(self, name)
@ -34,6 +37,7 @@ class LibStdCxxXMethod(gdb.xmethod.XMethod):
# Xmethods for std::array
class ArrayWorkerBase(gdb.xmethod.XMethodWorker):
def __init__(self, val_type, size):
self._val_type = val_type
@ -43,6 +47,7 @@ class ArrayWorkerBase(gdb.xmethod.XMethodWorker):
nullptr = gdb.parse_and_eval('(void *) 0')
return nullptr.cast(self._val_type.pointer()).dereference()
class ArraySizeWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -56,6 +61,7 @@ class ArraySizeWorker(ArrayWorkerBase):
def __call__(self, obj):
return self._size
class ArrayEmptyWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -69,6 +75,7 @@ class ArrayEmptyWorker(ArrayWorkerBase):
def __call__(self, obj):
return (int(self._size) == 0)
class ArrayFrontWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -85,6 +92,7 @@ class ArrayFrontWorker(ArrayWorkerBase):
else:
return self.null_value()
class ArrayBackWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -101,6 +109,7 @@ class ArrayBackWorker(ArrayWorkerBase):
else:
return self.null_value()
class ArrayAtWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -117,6 +126,7 @@ class ArrayAtWorker(ArrayWorkerBase):
((int(index), self._size)))
return obj['_M_elems'][index]
class ArraySubscriptWorker(ArrayWorkerBase):
def __init__(self, val_type, size):
ArrayWorkerBase.__init__(self, val_type, size)
@ -133,6 +143,7 @@ class ArraySubscriptWorker(ArrayWorkerBase):
else:
return self.null_value()
class ArrayMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -162,6 +173,7 @@ class ArrayMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::deque
class DequeWorkerBase(gdb.xmethod.XMethodWorker):
def __init__(self, val_type):
self._val_type = val_type
@ -179,6 +191,7 @@ class DequeWorkerBase(gdb.xmethod.XMethodWorker):
index_node = first_node + int(idx) // self._bufsize
return index_node[0][idx % self._bufsize]
class DequeEmptyWorker(DequeWorkerBase):
def get_arg_types(self):
return None
@ -190,6 +203,7 @@ class DequeEmptyWorker(DequeWorkerBase):
return (obj['_M_impl']['_M_start']['_M_cur'] ==
obj['_M_impl']['_M_finish']['_M_cur'])
class DequeSizeWorker(DequeWorkerBase):
def get_arg_types(self):
return None
@ -200,6 +214,7 @@ class DequeSizeWorker(DequeWorkerBase):
def __call__(self, obj):
return self.size(obj)
class DequeFrontWorker(DequeWorkerBase):
def get_arg_types(self):
return None
@ -210,6 +225,7 @@ class DequeFrontWorker(DequeWorkerBase):
def __call__(self, obj):
return obj['_M_impl']['_M_start']['_M_cur'][0]
class DequeBackWorker(DequeWorkerBase):
def get_arg_types(self):
return None
@ -219,12 +235,13 @@ class DequeBackWorker(DequeWorkerBase):
def __call__(self, obj):
if (obj['_M_impl']['_M_finish']['_M_cur'] ==
obj['_M_impl']['_M_finish']['_M_first']):
obj['_M_impl']['_M_finish']['_M_first']):
prev_node = obj['_M_impl']['_M_finish']['_M_node'] - 1
return prev_node[0][self._bufsize - 1]
else:
return obj['_M_impl']['_M_finish']['_M_cur'][-1]
class DequeSubscriptWorker(DequeWorkerBase):
def get_arg_types(self):
return get_std_size_type()
@ -235,6 +252,7 @@ class DequeSubscriptWorker(DequeWorkerBase):
def __call__(self, obj, subscript):
return self.index(obj, subscript)
class DequeAtWorker(DequeWorkerBase):
def get_arg_types(self):
return get_std_size_type()
@ -248,7 +266,8 @@ class DequeAtWorker(DequeWorkerBase):
raise IndexError('Deque index "%d" should not be >= %d.' %
(int(index), deque_size))
else:
return self.index(obj, index)
return self.index(obj, index)
class DequeMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
@ -274,6 +293,7 @@ class DequeMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::forward_list
class ForwardListWorkerBase(gdb.xmethod.XMethodMatcher):
def __init__(self, val_type, node_type):
self._val_type = val_type
@ -282,6 +302,7 @@ class ForwardListWorkerBase(gdb.xmethod.XMethodMatcher):
def get_arg_types(self):
return None
class ForwardListEmptyWorker(ForwardListWorkerBase):
def get_result_type(self, obj):
return get_bool_type()
@ -289,6 +310,7 @@ class ForwardListEmptyWorker(ForwardListWorkerBase):
def __call__(self, obj):
return obj['_M_impl']['_M_head']['_M_next'] == 0
class ForwardListFrontWorker(ForwardListWorkerBase):
def get_result_type(self, obj):
return self._val_type
@ -298,6 +320,7 @@ class ForwardListFrontWorker(ForwardListWorkerBase):
val_address = node['_M_storage']['_M_storage'].address
return val_address.cast(self._val_type.pointer()).dereference()
class ForwardListMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
matcher_name = matcher_name_prefix + 'forward_list'
@ -320,6 +343,7 @@ class ForwardListMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::list
class ListWorkerBase(gdb.xmethod.XMethodWorker):
def __init__(self, val_type, node_type):
self._val_type = val_type
@ -337,6 +361,7 @@ class ListWorkerBase(gdb.xmethod.XMethodWorker):
addr = node['_M_storage'].address
return addr.cast(self._val_type.pointer()).dereference()
class ListEmptyWorker(ListWorkerBase):
def get_result_type(self, obj):
return get_bool_type()
@ -348,6 +373,7 @@ class ListEmptyWorker(ListWorkerBase):
else:
return False
class ListSizeWorker(ListWorkerBase):
def get_result_type(self, obj):
return get_std_size_type()
@ -361,6 +387,7 @@ class ListSizeWorker(ListWorkerBase):
size += 1
return size
class ListFrontWorker(ListWorkerBase):
def get_result_type(self, obj):
return self._val_type
@ -369,6 +396,7 @@ class ListFrontWorker(ListWorkerBase):
node = obj['_M_impl']['_M_node']['_M_next'].cast(self._node_type)
return self.get_value_from_node(node)
class ListBackWorker(ListWorkerBase):
def get_result_type(self, obj):
return self._val_type
@ -377,6 +405,7 @@ class ListBackWorker(ListWorkerBase):
prev_node = obj['_M_impl']['_M_node']['_M_prev'].cast(self._node_type)
return self.get_value_from_node(prev_node)
class ListMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -401,6 +430,7 @@ class ListMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::vector
class VectorWorkerBase(gdb.xmethod.XMethodWorker):
def __init__(self, val_type):
self._val_type = val_type
@ -425,6 +455,7 @@ class VectorWorkerBase(gdb.xmethod.XMethodWorker):
else:
return obj['_M_impl']['_M_start'][index]
class VectorEmptyWorker(VectorWorkerBase):
def get_arg_types(self):
return None
@ -435,6 +466,7 @@ class VectorEmptyWorker(VectorWorkerBase):
def __call__(self, obj):
return int(self.size(obj)) == 0
class VectorSizeWorker(VectorWorkerBase):
def get_arg_types(self):
return None
@ -445,6 +477,7 @@ class VectorSizeWorker(VectorWorkerBase):
def __call__(self, obj):
return self.size(obj)
class VectorFrontWorker(VectorWorkerBase):
def get_arg_types(self):
return None
@ -455,6 +488,7 @@ class VectorFrontWorker(VectorWorkerBase):
def __call__(self, obj):
return self.get(obj, 0)
class VectorBackWorker(VectorWorkerBase):
def get_arg_types(self):
return None
@ -465,6 +499,7 @@ class VectorBackWorker(VectorWorkerBase):
def __call__(self, obj):
return self.get(obj, int(self.size(obj)) - 1)
class VectorAtWorker(VectorWorkerBase):
def get_arg_types(self):
return get_std_size_type()
@ -479,6 +514,7 @@ class VectorAtWorker(VectorWorkerBase):
((int(index), size)))
return self.get(obj, int(index))
class VectorSubscriptWorker(VectorWorkerBase):
def get_arg_types(self):
return get_std_size_type()
@ -489,6 +525,7 @@ class VectorSubscriptWorker(VectorWorkerBase):
def __call__(self, obj, subscript):
return self.get(obj, int(subscript))
class VectorMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -514,6 +551,7 @@ class VectorMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for associative containers
class AssociativeContainerWorkerBase(gdb.xmethod.XMethodWorker):
def __init__(self, unordered):
self._unordered = unordered
@ -527,6 +565,7 @@ class AssociativeContainerWorkerBase(gdb.xmethod.XMethodWorker):
def get_arg_types(self):
return None
class AssociativeContainerEmptyWorker(AssociativeContainerWorkerBase):
def get_result_type(self, obj):
return get_bool_type()
@ -534,6 +573,7 @@ class AssociativeContainerEmptyWorker(AssociativeContainerWorkerBase):
def __call__(self, obj):
return int(self.node_count(obj)) == 0
class AssociativeContainerSizeWorker(AssociativeContainerWorkerBase):
def get_result_type(self, obj):
return get_std_size_type()
@ -541,6 +581,7 @@ class AssociativeContainerSizeWorker(AssociativeContainerWorkerBase):
def __call__(self, obj):
return self.node_count(obj)
class AssociativeContainerMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self, name):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -564,6 +605,7 @@ class AssociativeContainerMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::unique_ptr
class UniquePtrGetWorker(gdb.xmethod.XMethodWorker):
"Implements std::unique_ptr<T>::get() and std::unique_ptr<T>::operator->()"
@ -593,7 +635,7 @@ class UniquePtrGetWorker(gdb.xmethod.XMethodWorker):
tuple_member = obj['_M_t']
else:
return None
tuple_impl_type = tuple_member.type.fields()[0].type # _Tuple_impl
tuple_impl_type = tuple_member.type.fields()[0].type # _Tuple_impl
tuple_head_type = tuple_impl_type.fields()[1].type # _Head_base
head_field = tuple_head_type.fields()[0]
if head_field.name == '_M_head_impl':
@ -603,6 +645,7 @@ class UniquePtrGetWorker(gdb.xmethod.XMethodWorker):
else:
return None
class UniquePtrDerefWorker(UniquePtrGetWorker):
"Implements std::unique_ptr<T>::operator*()"
@ -619,6 +662,7 @@ class UniquePtrDerefWorker(UniquePtrGetWorker):
def __call__(self, obj):
return UniquePtrGetWorker.__call__(self, obj).dereference()
class UniquePtrSubscriptWorker(UniquePtrGetWorker):
"Implements std::unique_ptr<T>::operator[](size_t)"
@ -638,6 +682,7 @@ class UniquePtrSubscriptWorker(UniquePtrGetWorker):
def __call__(self, obj, index):
return UniquePtrGetWorker.__call__(self, obj)[index]
class UniquePtrMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -663,6 +708,7 @@ class UniquePtrMethodsMatcher(gdb.xmethod.XMethodMatcher):
# Xmethods for std::shared_ptr
class SharedPtrGetWorker(gdb.xmethod.XMethodWorker):
"Implements std::shared_ptr<T>::get() and std::shared_ptr<T>::operator->()"
@ -686,6 +732,7 @@ class SharedPtrGetWorker(gdb.xmethod.XMethodWorker):
def __call__(self, obj):
return obj['_M_ptr']
class SharedPtrDerefWorker(SharedPtrGetWorker):
"Implements std::shared_ptr<T>::operator*()"
@ -702,6 +749,7 @@ class SharedPtrDerefWorker(SharedPtrGetWorker):
def __call__(self, obj):
return SharedPtrGetWorker.__call__(self, obj).dereference()
class SharedPtrSubscriptWorker(SharedPtrGetWorker):
"Implements std::shared_ptr<T>::operator[](size_t)"
@ -726,6 +774,7 @@ class SharedPtrSubscriptWorker(SharedPtrGetWorker):
(self._elem_type, int(index), int(m.group(1))))
return SharedPtrGetWorker.__call__(self, obj)[index]
class SharedPtrUseCountWorker(gdb.xmethod.XMethodWorker):
"Implements std::shared_ptr<T>::use_count()"
@ -745,6 +794,7 @@ class SharedPtrUseCountWorker(gdb.xmethod.XMethodWorker):
refcounts = obj['_M_refcount']['_M_pi']
return refcounts['_M_use_count'] if refcounts else 0
class SharedPtrUniqueWorker(SharedPtrUseCountWorker):
"Implements std::shared_ptr<T>::unique()"
@ -757,6 +807,7 @@ class SharedPtrUniqueWorker(SharedPtrUseCountWorker):
def __call__(self, obj):
return SharedPtrUseCountWorker.__call__(self, obj) == 1
class SharedPtrMethodsMatcher(gdb.xmethod.XMethodMatcher):
def __init__(self):
gdb.xmethod.XMethodMatcher.__init__(self,
@ -782,6 +833,7 @@ class SharedPtrMethodsMatcher(gdb.xmethod.XMethodMatcher):
return worker
return None
def register_libstdcxx_xmethods(locus):
gdb.xmethod.register_xmethod_matcher(locus, ArrayMethodsMatcher())
gdb.xmethod.register_xmethod_matcher(locus, ForwardListMethodsMatcher())