comparison src/ChangeLog @ 5552:85210c453a97

Fix performance regression in refactored syntax cache setup. More doc improvements. * syntax.h (enum syntax_source): New. Specify whether syntax is from property or buffer. (struct syntax_cache): Use enum syntax_source source, instead of no_syntax_table_prop and use_code. Improve comments. (SOURCE_IS_TABLE): New predicate. (SYNTAX_CODE_FROM_CACHE): Use it instead of use_code, and adjust logic. * syntax.c (syntax_cache_table_was_changed): Check cache->source (cache->no_syntax_table_prop is gone). (reset_syntax_cache_range): All information about OBJECT and BUFFER is in CACHE already. Also reset markers in OBJECT if it is a buffer. Rename INFINITE to VALID_EVERYWHERE. (init_syntax_cache): Initialize source (cache->no_syntax_table_prop is gone). Maybe initialize start and end to null markers. Initialize cache range with reset_syntax_cache_range. (update_syntax_cache): Use source instead of no_syntax_table_prop and use_code. (setup_syntax_cache): Add header comment. Improve other comments. Make calls to reset_syntax_cache_range and init_syntax_cache match their prototypes. (init_buffer_syntax_cache): Use init_syntax_cache to do the work. (signal_syntax_cache_extent_changed): Make call to reset_syntax_cache_range match its prototype. Improve local variable naming.
author Stephen J. Turnbull <stephen@xemacs.org>
date Tue, 23 Aug 2011 04:41:45 +0900
parents 69de75c48efa
children a142ad1a9140
comparison
equal deleted inserted replaced
5551:40a52efbf3a3 5552:85210c453a97
1 2011-08-23 Stephen Turnbull <stephen@xemacs.org>
2
3 Fix performance regression in refactored syntax cache setup.
4 More doc improvements.
5
6 * syntax.h (enum syntax_source):
7 New. Specify whether syntax is from property or buffer.
8 (struct syntax_cache):
9 Use enum syntax_source source, instead of no_syntax_table_prop
10 and use_code.
11 Improve comments.
12 (SOURCE_IS_TABLE):
13 New predicate.
14 (SYNTAX_CODE_FROM_CACHE):
15 Use it instead of use_code, and adjust logic.
16
17 * syntax.c (syntax_cache_table_was_changed):
18 Check cache->source (cache->no_syntax_table_prop is gone).
19 (reset_syntax_cache_range):
20 All information about OBJECT and BUFFER is in CACHE already.
21 Also reset markers in OBJECT if it is a buffer.
22 Rename INFINITE to VALID_EVERYWHERE.
23 (init_syntax_cache):
24 Initialize source (cache->no_syntax_table_prop is gone).
25 Maybe initialize start and end to null markers.
26 Initialize cache range with reset_syntax_cache_range.
27 (update_syntax_cache):
28 Use source instead of no_syntax_table_prop and use_code.
29 (setup_syntax_cache):
30 Add header comment. Improve other comments.
31 Make calls to reset_syntax_cache_range and init_syntax_cache match
32 their prototypes.
33 (init_buffer_syntax_cache):
34 Use init_syntax_cache to do the work.
35 (signal_syntax_cache_extent_changed):
36 Make call to reset_syntax_cache_range match its prototype.
37 Improve local variable naming.
38
1 2011-08-08 Stephen J. Turnbull <stephen@xemacs.org> 39 2011-08-08 Stephen J. Turnbull <stephen@xemacs.org>
2 40
3 * syntax.c (update_syntax_cache): 41 * syntax.c (update_syntax_cache):
4 Use buffer_or_string_accessible_*, not buffer_or_string_absolute_*. 42 Use buffer_or_string_accessible_*, not buffer_or_string_absolute_*.
5 Patch and test suggested by Alan Mackenzie. 43 Patch and test suggested by Alan Mackenzie.