Mercurial > emacs
view admin/README @ 110524:bf806d096e9a
Update to CEDET 1.0's version of EIEIO.
* emacs-lisp/eieio.el (eieio-specialized-key-to-generic-key): New
function.
(eieio-defmethod, eieio-generic-form, eieio-generic-call): Use it.
(eieio-default-eval-maybe): Eval val instead of unquoting only.
(class-precedence-list): If class is nil, return nil.
(eieio-generic-call): If class of first input arg is nil, don't
look up static methods, and do check for primary methods.
(initialize-instance): See if the default needs to be evaluated
during the constructor.
(eieio-perform-slot-validation-for-default): Don't do the check
for values that will eventually be evaluated.
(eieio-eval-default-p): New function.
(eieio-default-eval-maybe): Use it.
* emacs-lisp/eieio.el (eieio-defclass): Allow :c3
method-invocation-order.
(eieio-c3-candidate, eieio-c3-merge-lists): New functions.
(eieio-class-precedence-dfs): Compute class precedence list using
dfs algorithm.
(eieio-class-precedence-bfs): Compute class precedence list using
bfs algorithm.
(eieio-class-precedence-c3): compute class precedence list using
c3 algorithm.
(class-precedence-list): New function.
(eieiomt-method-list, eieiomt-sym-optimize): Use it.
(inconsistent-class-hierarchy): New error symbol.
(call-next-method): Stow the replacement argument list for future
call-next-method invocations.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Sun, 19 Sep 2010 00:23:57 -0400 |
parents | b08ffdff79c7 |
children | 376148b31b5e |
line wrap: on
line source
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. See the end of the file for license conditions. The admin directory This directory contains scripts and other things useful for developing and maintaining Emacs. These files are not part of Emacs releases because they are not deemed generally useful, and you have to know what you do when using them. * Instructions and scripts used to prepare an Emacs release. ** FOR-RELEASE Living list of activities that must be completed before the next release. ** make-tarball.txt Instructions to create pretest or release tarballs, annoucements, etc. ** admin.el Utilities for setting version numbers and alike. ** make-announcement, make-changelog-diff Scripts used to prepare release announcements. * Scripts that can be used to build and test Emacs. ** build-configs Build Emacs in various configurations. ** make-emacs Build Emacs in various ways. ** quick-install-emacs Install emacs quickly (`incrementally'). ** alloc-colors.c A utility program that allocates a given number of colors on X. Can be used to debug Emacs with dense colormaps (PseudoColor). ** check-doc-strings Check doc strings against documentation. ** cus-test.el Tests for custom types and load problems. ** diff-tar-files Show files added/removed between two tar files. Brief description of sub-directories: charsets scripts for generating charset map files in ../etc/charsets unidata scripts for generating character property files in ../lisp/international This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. Local variables: mode: outline paragraph-separate: "[ ]*$" end: # arch-tag: 812b9461-bc0a-46a7-925e-24bd41118463