Merge syntax-propertize--done and parse-sexp-propertize-done
commit3928ef2dd5b8febf3b1d9c1bfb22af3698d16bea
authorStefan Monnier <monnier@iro.umontreal.ca>
Sat, 12 Sep 2015 00:00:05 +0000 (11 20:00 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sat, 12 Sep 2015 00:00:05 +0000 (11 20:00 -0400)
tree78c6b4d9eac102e97b6ef2a83edadef0c3152686
parent818f06eaa72d8e4f9ba314c1c2855613bf89f396
Merge syntax-propertize--done and parse-sexp-propertize-done

* lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
(syntax-propertize): Set syntax-propertize--done even if
syntax-propertize-function is nil.  Avoid recursive invocations.
(syntax-propertize-chunks): New var.
(internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
Simplify.
(parse-sexp-propertize-function): Don't set any more.

* src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
(parse_sexp_propertize): Don't assume charpos is not yet propertized.
Call Qinternal__syntax_propertize instead of
Vparse_sexp_propertize_function.  Truncate e_property if needed.
(update_syntax_table_forward): Streamline.
(syms_of_syntax): Define Qinternal__syntax_propertize.
(syntax_propertize__done): Rename from parse_sexp_propertize_done.
lisp/emacs-lisp/syntax.el
src/syntax.c
src/syntax.h