INNER CODE UNIT · Python

ShortPtrSummary

Hekbas/Luth · luth/extern/source/tracy/extra/natvis.py:11

def ShortPtrSummary(value, dict):
    val = value.GetNonSyntheticValue()
    ptr = val.GetChildMemberWithName('m_ptr')
    type = val.GetType().GetTemplateArgumentType(0)
    p0 = ptr.GetChildAtIndex(0).GetValueAsUnsigned()
    p1 = ptr.GetChildAtIndex(1).GetValueAsUnsigned()
    p2 = ptr.GetChildAtIndex(2).GetValueAsUnsigned()
    p3 = ptr.GetChildAtIndex(3).GetValueAsUnsigned()
    p4 = ptr.GetChildAtIndex(4).GetValueAsUnsigned()
    p5 = ptr.GetChildAtIndex(5).GetValueAsUnsigned()
    #return '0x{0:02x}{1:02x}{2:02x}{3:02x}{4:02x}{5:02x}'.format(p5, p4, p3, p2, p1, p0)
    return value.CreateValueFromAddress('m_ptr', p0 | (p1 << 8) | (p2 << 16) | (p3 << 24) | (p4 << 32) | (p5 << 40), type)

class ShortPtrPrinter:
    def __init__(self, val, dict):
        self.val = val
        self.type = self.val.GetType().GetTemplateArgumentType(0)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…