bubbles
bubbles copied to clipboard
perf(key): optimize `Matches`
Fixes #262.
name old time/op new time/op delta
Matches/success-32 66.9ns ± 1% 15.7ns ± 0% -76.47% (p=0.016 n=5+4)
Matches/fail-32 27.9ns ± 0% 12.4ns ± 2% -55.70% (p=0.016 n=4+5)
name old alloc/op new alloc/op delta
Matches/success-32 5.00B ± 0% 0.00B -100.00% (p=0.008 n=5+5)
Matches/fail-32 0.00B 0.00B ~ (all equal)
name old allocs/op new allocs/op delta
Matches/success-32 1.00 ± 0% 0.00 -100.00% (p=0.008 n=5+5)
Matches/fail-32 0.00 0.00 ~ (all equal)
cc @meowgorithm @muesli
NB: I could imagine the map from string to tea.Key being defined in the bubbletea package directly. If you prefer that, let me know.
NB: I could imagine the map from string to tea.Key being defined in the bubbletea package directly. If you prefer that, let me know.
I think that makes sense and is probably nicer next to the other tea.Key code.
Whoa! This is awesome @knz, solid optimization!
I think that makes sense and is probably nicer next to the other tea.Key code.
Ok see https://github.com/charmbracelet/bubbletea/pull/491
Then to merge this PR I'll need a release number for the go.mod update.
@muesli Is this good to merge?