Change #212099
Category | texinfo |
Changed by | Gavin Smith <gavinsmith0123 | @gmail.com>
Changed at | Fri 18 Oct 2024 16:54:32 |
Repository | https://git.savannah.gnu.org/git/texinfo.git |
Project | texinfo |
Branch | master |
Revision | 55ab4547df6d452a23ee7be1bd0241a4d6eea2be |
Comments
C hashmap implementation * tp/Texinfo/XS/convert/hashmap.c (init_registered_ids_c_hashmap, is_c_hashmap_registered_id) (c_hashmap_register_id, clear_registered_ids_c_hashmap) (free_registered_ids_c_hashmap): New functions. * tp/Texinfo/XS/main/converter_types.h (enum ids_data_type): add IDT_hashmap (CONVF_hashmap): add symbol (CONVERTER): add field 'registered_ids_c_hashmap'. * tp/Texinfo/XS/convert/html_prepare_converter.c (html_prepare_conversion_units_targets, html_converter_customize): Move initialisation of hash to html_prepare_conversion_units_targets. (Suggestion from Patrice.) Add code to use C hashmap implementation if selected. Call ids_hashmap_predicted_values for the number of bins. * tp/Texinfo/XS/convert/html_prepare_converter.c (html_register_id, html_id_is_registered) <IDT_hashmap>: Call appropriate functions for C hashmap implementation. * tp/Texinfo/XS/convert/html_converter_finish.c (html_reset_converter, html_free_converter) <IDT_hashmap>: Call appropriate functions for C hashmap implementation. * tp/Texinfo/XS/convert/converter.c (new_converter), * tp/Texinfo/XS/convert/get_converter_perl_info.c (get_or_create_sv_converter): Use C hashmap implementation by default. * tp/Texinfo/XS/teximakehtml.c (main): Use CONVF_hashmap.
Changed files
- ChangeLog
- tp/Texinfo/XS/Makefile.am
- tp/Texinfo/XS/convert/converter.c
- tp/Texinfo/XS/convert/get_converter_perl_info.c
- tp/Texinfo/XS/convert/hashmap.c
- tp/Texinfo/XS/convert/hashmap.h
- tp/Texinfo/XS/convert/html_converter_finish.c
- tp/Texinfo/XS/convert/html_prepare_converter.c
- tp/Texinfo/XS/main/converter_types.h
- tp/Texinfo/XS/teximakehtml.c