perf: pool YAML tree storage
Nodes kept seven Vecs and Strings each, about 240 bytes. Children and values now sit in shared pools, and comment lists and directive parameters in a side table, so a node is about 90 bytes and building the tree mostly stops allocating. Line lookups start at the last line, and attach no longer allocates per node. The 452 KB vite lockfile formats in 14.0 ms instead of 20.3 ms, with 104K allocations instead of 240K.
Parentbc2265e
8 files changed+404-274
StackedSplit