summaryrefslogtreecommitdiff
path: root/%25253fid%25253d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf%253fid%253d7ab0cb5ef...
diff options
context:
space:
mode:
authorNRK <nrk@disroot.org>2023-07-07 17:00:42 +0600
committerHiltjo Posthuma <hiltjo@codemadness.org>2023-07-07 15:03:57 +0200
commit7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf (patch)
tree9d68f06933733c75cceca65a19f1a16501946327 /%25253fid%25253d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf%253fid%253d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf&id2%253d0fe460dbd469a1d5b6a7140d0e1801935e4a923b%3fid%3d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf?id=7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf
parent0fe460dbd469a1d5b6a7140d0e1801935e4a923b (diff)
drw: minor improvement to the nomatches cache
1. use `unsigned int` to store the codepoints, this avoids waste on common case where `long` is 64bits. and POSIX guarantees `int` to be at least 32bits so there's no risk of truncation. 2. since switching to `unsigned int` cuts down the memory requirement by half, double the cache size from 64 to 128. 3. instead of a linear search, use a simple hash-table for O(1) lookups.
Diffstat (limited to '%25253fid%25253d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf%253fid%253d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf&id2%253d0fe460dbd469a1d5b6a7140d0e1801935e4a923b%3fid%3d7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf?id=7ab0cb5ef0e19352fc5d64ae0d57a5cf4540acbf')
0 files changed, 0 insertions, 0 deletions