comparison lisp/emacs-lisp/byte-opt.el @ 77097:43beb362565f

Markus Triska <markus.triska at gmx.at>: (byte-optimize-char-before): Remove (move to bytecomp.el as byte-compile-char-before).
author Glenn Morris <rgm@gnu.org>
date Tue, 10 Apr 2007 03:55:17 +0000
parents 4f239924057d
children c7fe4de39577 4ef881a120fe
comparison
equal deleted inserted replaced
77096:14feb20665af 77097:43beb362565f
1133 (cond ((and (= 2 (safe-length form)) 1133 (cond ((and (= 2 (safe-length form))
1134 (numberp (nth 1 form))) 1134 (numberp (nth 1 form)))
1135 (list 'forward-word (eval (- (nth 1 form))))) 1135 (list 'forward-word (eval (- (nth 1 form)))))
1136 ((= 1 (safe-length form)) 1136 ((= 1 (safe-length form))
1137 '(forward-word -1)) 1137 '(forward-word -1))
1138 (t form)))
1139
1140 (put 'char-before 'byte-optimizer 'byte-optimize-char-before)
1141 (defun byte-optimize-char-before (form)
1142 (cond ((= 2 (safe-length form))
1143 `(char-after (1- ,(nth 1 form))))
1144 ((= 1 (safe-length form))
1145 '(char-after (1- (point))))
1146 (t form))) 1138 (t form)))
1147 1139
1148 ;; Fixme: delete-char -> delete-region (byte-coded) 1140 ;; Fixme: delete-char -> delete-region (byte-coded)
1149 ;; optimize string-as-unibyte, string-as-multibyte, string-make-unibyte, 1141 ;; optimize string-as-unibyte, string-as-multibyte, string-make-unibyte,
1150 ;; string-make-multibyte for constant args. 1142 ;; string-make-multibyte for constant args.