]> git.eshelyaron.com Git - emacs.git/commitdiff
(indian-regexp-of-hashtbl-keys): Don't sort the argument to regexp-opt.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 18 May 2003 20:58:34 +0000 (20:58 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 18 May 2003 20:58:34 +0000 (20:58 +0000)
(indian--puthash-char): Use dolist rather than mapc.

lisp/language/ind-util.el

index 8885960dff8dcb8fab0a61a6f6c7fda562855b70..60008cce48c418316dae7d099ffc829e8f51adbe 100644 (file)
@@ -1,6 +1,6 @@
 ;;; ind-util.el --- Transliteration and Misc. Tools for Indian Languages -*- coding: iso-2022-7bit; -*-
 
-;; Copyright (C) 2001 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2003 Free Software Foundation, Inc.
 
 ;; Maintainer:  KAWABATA, Taichi <kawabata@m17n.org>
 ;; Keywords: multilingual, Indian, Devanagari
 
 (defun indian-regexp-of-hashtbl-keys (hashtbl)
   "Returns the regular expression of hashtable keys."
-  (let ((max-specpdl-size 1000))
-    (regexp-opt
-     (sort
-      (let (dummy)
-       (maphash (function (lambda (key val) (setq dummy (cons key dummy))))
-                hashtbl)
-       dummy)
-      (function (lambda (x y) (> (length x) (length y))))))))
+  (let (keys)
+    (maphash (lambda (key val) (push key keys)) hashtbl)
+    (regexp-opt keys)))
 
 (defvar indian-dev-base-table
   '(
@@ -414,10 +409,8 @@ FUNCTION will be called 15 times."
       (if (stringp trans-char) (setq trans-char (list trans-char)))
       (if (char-valid-p char) (setq char (char-to-string char)))
       (puthash char (car trans-char) encode-hash)
-      (mapc
-       (lambda (trans)
-        (puthash trans char decode-hash))
-       trans-char))))
+      (dolist (trans trans-char)
+        (puthash trans char decode-hash)))))
 
 (defun indian--map (f l1 l2)
   (while l1