# RUN: mkdir -p %t # RUN: %python %S/../../../../examples/python/formatter_bytecode.py --compile %s --format c --type-name RigidArray --output %t/c-output.txt # RUN: %python %S/../../../../examples/python/formatter_bytecode.py --compile %s --format swift --type-name RigidArray --output %t/swift-output.txt # RUN: diff -u --strip-trailing-cr %S/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt %t/c-output.txt # RUN: diff -u --strip-trailing-cr %S/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt %t/swift-output.txt import lldb class RigidArraySynthetic: valobj: lldb.SBValue storage: lldb.SBValue count: int def __init__(self, valobj: lldb.SBValue, _) -> None: self.valobj = valobj def num_children(self) -> int: return self.count def get_child_at_index(self, idx: int) -> lldb.SBValue: return self.storage.GetChildAtIndex(idx) def update(self) -> bool: self.storage = self.valobj.GetChildMemberWithName( "_storage" ).GetSyntheticValue() self.count = ( self.valobj.GetChildMemberWithName("_count") .GetSyntheticValue() .GetValueAsUnsigned() ) return True