INNER CODE UNIT · Python
header_size
SpartanJ/eepp · projects/scripts/debug/eepp_gdb.py:56
header_size = size_t_type.sizeof * 2 # header has two size_t fields
# Translate svector's detail::round_up(sizeof(header), alignment_of_t)
offset_to_data = ((header_size + align_t - 1) // align_t) * align_t
data_ptr = (storage_ptr.cast(char_ptr_type) + offset_to_data).cast(
self.type_t.pointer()
)
for i in range(size):
yield f"[{i}]", (data_ptr + i).dereference()
def register_ee_printers(obj):
if obj is None:
obj = gdb
obj.pretty_printers.append(
lambda val: EESmallVectorPrinter(val) if "svector" in str(val.type) else None