comparison lisp/cl-extra.el @ 801:2b676dc88c66

[xemacs-hg @ 2002-04-01 03:58:02 by ben] bug fixes (e.g. ballooning on X windows) Makefile.in.in: Try to make the Makefile notice if its source Makefile.in.in is changed, and regenerate and run itself. Use a bigger default SHEAP_ADJUSTMENT on Cygwin; otherwise you can't compile under Mule if a Lisp file has changed. (can't run temacs) TODO.ben-mule-21-5: update. mule/mule-cmds.el: Hash the result of mswindows-get-language-environment-from-locale, since it's very expensive (and causes huge ballooning of memory under X Windows, since it's called from x-get-resource). cl-extra.el, code-files.el, files.el, simple.el, subr.el, x-faces.el: Create new string-equal-ignore-case, based on built-in compare-strings -- compare strings ignoring case without the need to generate garbage by calling downcase. Use it in equalp and elsewhere. alloc.c, bytecode.c, chartab.c, data.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-unixoid.c, extents.c, file-coding.c, fileio.c, fns.c, glyphs.c, gutter.c, lisp-union.h, lisp.h, mule-charset.c, nt.c, process-unix.c, process.c, specifier.c, symbols.c, sysdep.c, sysdep.h, text.c, toolbar.c: Try to implement GC triggering based on percentage of total memory usage. Not currently activated (percentage set to 0) because not quite working. Add `memory-usage' primitive to return XEmacs' idea of its memory usage. Add primitive compare-strings, compatible with FSF 21.1 -- can compare any part of two strings, optionally ignoring case. Improve qxe() functions in text.c for text comparison. Use RETURN_NOT_REACHED to try to avoid warnings about unreachable code. Add volatile_make_int() to fix warning in unix_send_process().
author ben
date Mon, 01 Apr 2002 03:59:04 +0000
parents 79940b592197
children 175ee2cb4d3a
comparison
equal deleted inserted replaced
800:a5954632b187 801:2b676dc88c66
1 ;;; cl-extra.el --- Common Lisp extensions for XEmacs Lisp (part two) 1 ;;; cl-extra.el --- Common Lisp extensions for XEmacs Lisp (part two)
2 2
3 ;; Copyright (C) 1993 Free Software Foundation, Inc. 3 ;; Copyright (C) 1993 Free Software Foundation, Inc.
4 ;; Copyright (C) 2002 Ben Wing.
4 5
5 ;; Author: Dave Gillespie <daveg@synaptics.com> 6 ;; Author: Dave Gillespie <daveg@synaptics.com>
6 ;; Maintainer: XEmacs Development Team 7 ;; Maintainer: XEmacs Development Team
7 ;; Version: 2.02 8 ;; Version: 2.02
8 ;; Keywords: extensions, dumped 9 ;; Keywords: extensions, dumped
97 This is like `equal', except that it accepts numerically equal 98 This is like `equal', except that it accepts numerically equal
98 numbers of different types (float vs. integer), and also compares 99 numbers of different types (float vs. integer), and also compares
99 strings case-insensitively." 100 strings case-insensitively."
100 (cond ((eq x y) t) 101 (cond ((eq x y) t)
101 ((stringp x) 102 ((stringp x)
102 (and (stringp y) (= (length x) (length y)) 103 ;; avoids downcase
103 (or (string-equal x y) 104 (eq t (compare-strings x nil nil y nil nil t)))
104 (string-equal (downcase x) (downcase y))))) ; lazy but simple!
105 ((characterp x) 105 ((characterp x)
106 (and (characterp y) 106 (and (characterp y)
107 (or (char-equal x y) 107 (or (char-equal x y)
108 (char-equal (downcase x) (downcase y))))) 108 (char-equal (downcase x) (downcase y)))))
109 ((numberp x) 109 ((numberp x)