diff options
author | Carlos Garcia Campos <cgarcia@igalia.com> | 2021-06-02 15:27:33 +0200 |
---|---|---|
committer | Carlos Garcia Campos <cgarcia@igalia.com> | 2021-06-04 10:47:39 +0200 |
commit | 18ef5ed9166914334e0c107d251525a6d082722e (patch) | |
tree | eea54c79c51abf6f5c950d551aa26d8e30489817 /docs | |
parent | 309ff12a37cfd85f5c14cdc13ca0a625b872979e (diff) | |
download | libsoup-18ef5ed9166914334e0c107d251525a6d082722e.tar.gz |
headers: stop interning all header names
To still optimize the headers handling we now follow an approach similar
to the WebKit one. We use gperf to generate a fast conversion from
commonly used name headers to an enum value. Headers are now stored in
two arrays, one for common headers where the enum value is used as the
name, and another one for uncommon headers where the name string is
stored duplicated and g_ascii_strcasecmp() is used for comparisons. Both
arrays are created on demand with preallocated space for 6 headers. This
changes a bit the order in which headers are iterated, because we
iterate the common headers first and then the uncommon ones.
Fixes #111
Diffstat (limited to 'docs')
-rw-r--r-- | docs/reference/meson.build | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/docs/reference/meson.build b/docs/reference/meson.build index 19732d5b..70282eca 100644 --- a/docs/reference/meson.build +++ b/docs/reference/meson.build @@ -44,6 +44,8 @@ ignore_headers = [ 'soup-client-message-io-http2.h', 'soup-body-input-stream-http2.h', 'soup-tls-interaction.h', + 'soup-header-names.h', + 'soup-message-headers-private.h', ] mkdb_args = [ |