tailwindcss/packages
Robin Malfait 1ceea2ff77
change underlying data structure
This improves memory usage and performance. The idea is exactly the same
though. But instead of using `push()` and `pop()` we just build up 2
objects where we can track the number and parent individually based on
the `depth`.

This means that we only allocate 2 objects (which we change over time)
we then simply use `parents[depth]` and `offsets[depth]` to get the
necessary data out.

Additionally, we're only storing the index/offset and the parent now.
Since the incoming ast is `T[]`, it means that we don't really have a
parent. For this we can create a fake parent (which is never passed to
`enter(…)`, `exit(…)` or used by `path()`)
2025-10-15 21:29:35 +02:00
..
@tailwindcss-browser Introduce canonicalizeCandidates on the internal Design System (#19059) 2025-10-07 12:41:12 +02:00
@tailwindcss-cli Prepare v4.1.14 release (#19037) 2025-10-01 11:48:02 -04:00
@tailwindcss-node Generalize the walk implementation (#19126) 2025-10-15 21:28:12 +02:00
@tailwindcss-postcss Prepare v4.1.14 release (#19037) 2025-10-01 11:48:02 -04:00
@tailwindcss-standalone Prepare v4.1.14 release (#19037) 2025-10-01 11:48:02 -04:00
@tailwindcss-upgrade Generalize the walk implementation (#19126) 2025-10-15 21:28:12 +02:00
@tailwindcss-vite Prepare v4.1.14 release (#19037) 2025-10-01 11:48:02 -04:00
internal-example-plugin Prefix internal modules with internal-* (#14074) 2024-07-29 10:58:07 -04:00
tailwindcss change underlying data structure 2025-10-15 21:29:35 +02:00
tsconfig.base.json Improve debug logs (#15303) 2024-12-11 15:27:20 +01:00