diff options
author | Kirill Chibisov <contact@kchibisov.com> | 2025-01-12 22:54:18 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-12 22:54:18 +0300 |
commit | b3fba5651a264d164d840bfd4f8f0a30fa0b555b (patch) | |
tree | 7063e6cd422f4f23b41a98a1e9ec29a4f5d10016 /codegen/src/ext/mod.rs | |
parent | c18ef2206af630f729835da237381628650005aa (diff) | |
download | r-alacritty-vte-b3fba5651a264d164d840bfd4f8f0a30fa0b555b.tar.gz r-alacritty-vte-b3fba5651a264d164d840bfd4f8f0a30fa0b555b.tar.bz2 r-alacritty-vte-b3fba5651a264d164d840bfd4f8f0a30fa0b555b.zip |
Rewrite table based state change to `match` based
The table based state change was too complex to make guesses why it's
getting slow and too fragile, as in modifying the amount of
states/actions were slowing down, even though, they were not used.
Rewrite the state + action change exactly how it's in [1] with respect
to our modifications/C1, etc. The new implementation is generally faster
than the previous one and is easier for compiler to reason about and
generate more efficient structures.
Also, the structure got way simpler to follow, since it matches the
spec pretty much exactly.
[1] - https://vt100.net/emu/dec_ansi_parser
Diffstat (limited to 'codegen/src/ext/mod.rs')
0 files changed, 0 insertions, 0 deletions