JSON Module

The JsonDictValue class is a zero-copy wrapper over a parsed DFTracer JSON event. It is the element type yielded by iter_json() and read_json(). The underlying bytes are owned by the C++ reader buffer; call JsonDictValue.to_dict() to materialize a regular Python dict for storage beyond the iterator’s lifetime.

JsonDictValue Class

class dftracer.utils.JsonDictValue

Bases: _BaseNative

Zero-copy wrapper over a parsed DFTracer JSON event.

Supports dict-like access: event['name'], event['args']['ret']. Call .to_dict() to materialize a regular Python dict.

__contains__(key: str) bool
__getitem__(key: str) object
__len__() int
get(key: str, default: object = None) object
items() list[tuple[str, object]]
keys() list[str]
to_dict() dict[str, object]
values() list[object]
reader = TraceReader("trace.pfw.gz")
for event in reader.iter_json():
    name = event["name"]                  # __getitem__
    if "args" in event:                   # __contains__
        ret = event["args"].get("ret")    # nested dict access
    owned = event.to_dict()               # materialize to plain dict