comparison src/ChangeLog @ 5261:69f687b3ba9d

Move #'replace to C, add bounds-checking to it and to #'fill. 2010-09-06 Aidan Kehoe <kehoea@parhasard.net> Move #'replace to C; add bounds checking to it and to #'fill. * fns.c (Fsubseq, Ffill, mapcarX): Don't #'nreverse in #'subseq, use fill_string_range and check bounds in #'fill, use replace_string_range() in #'map-into avoiding quadratic time when modfiying the string. * fns.c (check_sequence_range, fill_string_range) (replace_string_range, replace_string_range_1, Freplace): New functions; check that arguments fit sequence dimensions, fill a string range with a given character, replace a string range from an Ibyte pointer.
author Aidan Kehoe <kehoea@parhasard.net>
date Mon, 06 Sep 2010 17:29:51 +0100
parents 02c282ae97cb
children 75bcb5bef459
comparison
equal deleted inserted replaced
5260:dceee3855f15 5261:69f687b3ba9d
1 2010-09-06 Aidan Kehoe <kehoea@parhasard.net>
2
3 Move #'replace to C; add bounds checking to it and to #'fill.
4
5 * fns.c (Fsubseq, Ffill, mapcarX):
6 Don't #'nreverse in #'subseq, use fill_string_range and check
7 bounds in #'fill, use replace_string_range() in #'map-into
8 avoiding quadratic time when modfiying the string.
9
10 * fns.c (check_sequence_range, fill_string_range)
11 (replace_string_range, replace_string_range_1, Freplace):
12 New functions; check that arguments fit sequence dimensions, fill
13 a string range with a given character, replace a string range from
14 an Ibyte pointer.
15
1 2010-09-05 Aidan Kehoe <kehoea@parhasard.net> 16 2010-09-05 Aidan Kehoe <kehoea@parhasard.net>
2 17
3 * chartab.c (char_table_default_for_type, 18 * chartab.c (char_table_default_for_type,
4 chartab_default_validate): New. 19 chartab_default_validate): New.
5 (print_char_table, Freset_char_table, chartab_default_validate) 20 (print_char_table, Freset_char_table, chartab_default_validate)