diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2008-11-30 16:43:37 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2008-11-30 16:43:37 +0000 |
commit | 79a34e5d5a9a93d9232efd595291bc5ebea2f2c5 (patch) | |
tree | c35e7cc49699420e01a973f4bccb639931e9cc1d /include | |
parent | 7dad1d392d1c380648f6de13f81ade48ce958be1 (diff) | |
download | libcss-79a34e5d5a9a93d9232efd595291bc5ebea2f2c5.tar.gz libcss-79a34e5d5a9a93d9232efd595291bc5ebea2f2c5.tar.bz2 |
Use parserutils_hash instead of parserutils_dict.
This approximately halves the size of the interned string table.
We now have the following for allzengarden.css:
5507 slots used (of 8192 => 67.224121%)
Data:
3 full blocks: 12288 bytes
10 partial blocks: 38946 bytes (of 40960 => 95.083008%)
Total: 53488 (4112) (32)
Entries:
21 full blocks: 86016 bytes
1 partial blocks: 2096 bytes (of 4096 => 51.171875%)
Total: 90496 (4112) (32)
Hash structures: 65592
Which gives a total dictionary size of 209,576 bytes.
Note that 43% of this is parserutils_hash_entry structures (length-pointer pairs). It would be good, therefore, to be able to purge these.
svn path=/trunk/libcss/; revision=5852
Diffstat (limited to 'include')
-rw-r--r-- | include/libcss/types.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/libcss/types.h b/include/libcss/types.h index 7bce679..8bda940 100644 --- a/include/libcss/types.h +++ b/include/libcss/types.h @@ -12,7 +12,7 @@ #include <stdint.h> #include <stdlib.h> -#include <parserutils/utils/dict.h> +#include <parserutils/utils/hash.h> /** Source of charset information, in order of importance * A client-dictated charset will override all others. @@ -57,9 +57,9 @@ typedef enum css_origin { * String type * * \todo It might be better to define parserutils_string, and use that. - * (where parserutils_string is identical to parserutils_dict_entry) + * (where parserutils_string is identical to parserutils_hash_entry) */ -typedef parserutils_dict_entry css_string; +typedef parserutils_hash_entry css_string; typedef struct css_stylesheet css_stylesheet; |