* lex.el (lex-gen-ccel-unibyte-automata-state): Jump start of loop
authorakr <akr>
Sun, 23 Aug 1998 01:37:38 +0000 (01:37 +0000)
committerakr <akr>
Sun, 23 Aug 1998 01:37:38 +0000 (01:37 +0000)
on end of states.

ChangeLog
lex.el

index 71306cc..cc8cc48 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+1998-08-23  Tanaka Akira      <akr@jaist.ac.jp>
+
+       * lex.el (lex-gen-ccel-unibyte-automata-state): Jump start of loop
+       on end of states.
+
 1998-08-22  Tanaka Akira      <akr@jaist.ac.jp>
 
        * TESTPAT: Use `\t' instead of raw TAB character.
diff --git a/lex.el b/lex.el
index ede088e..2ba926b 100644 (file)
--- a/lex.el
+++ b/lex.el
@@ -9,6 +9,10 @@
 ;;;
 
 (eval-and-compile
+;; CCL is not so fast for this library.
+;; Because it requires quadratic time for skipping string prefix.
+;; However, it is bit faster than emacs-lisp on average for common case,
+;; it is default if available.
 (defvar lex-use-ccl (fboundp 'ccl-execute-on-string))
 (when lex-use-ccl
   (require 'ccl))
                                  (if (null (cdr l))
                                      (natset-seg (car l))
                                    (natset-seg (car l) (1- (cadr l)))))
-                               `(r1 = ,(cadr tr))))
+                               `((r1 = ,(cadr tr))
+                                 (repeat))))
                  trans))
               (repeat))))
        '((end)))))