X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=info%2Finternals.info-5;h=56833c546b317c36e0c7bc6890aa3f0463c5e028;hb=d8bd7eee3147c839d3c74d1823c139cd54867a75;hp=5b22b506b8f2d27d935dd6ae6f02f0cce310680e;hpb=e5cd8d4ed475af329be5df9627a53edd584fd3de;p=chise%2Fxemacs-chise.git diff --git a/info/internals.info-5 b/info/internals.info-5 index 5b22b50..56833c5 100644 --- a/info/internals.info-5 +++ b/info/internals.info-5 @@ -372,6 +372,15 @@ there needs to be a `DECLARE_LRECORD_IMPLEMENTATION()' somewhere in a `FOOBARP()', etc. macros in a `.h' (or occasionally `.c') file. To create one of these, copy an existing model and modify as necessary. + *Please note:* If you define an lrecord in an external +dynamically-loaded module, you must use `DECLARE_EXTERNAL_LRECORD', +`DEFINE_EXTERNAL_LRECORD_IMPLEMENTATION', and +`DEFINE_EXTERNAL_LRECORD_SEQUENCE_IMPLEMENTATION' instead of the +non-EXTERNAL forms. These macros will dynamically add new type numbers +to the global enum that records them, whereas the non-EXTERNAL forms +assume that the programmer has already inserted the correct type numbers +into the enum's code at compile-time. + The various methods in the lrecord implementation structure are: 1. A "mark" method. This is called during the marking stage and @@ -1083,20 +1092,3 @@ comes to mind). The DOC file contents should probably end up in the dump file. - -File: internals.info, Node: Events and the Event Loop, Next: Evaluation; Stack Frames; Bindings, Prev: Dumping, Up: Top - -Events and the Event Loop -************************* - -* Menu: - -* Introduction to Events:: -* Main Loop:: -* Specifics of the Event Gathering Mechanism:: -* Specifics About the Emacs Event:: -* The Event Stream Callback Routines:: -* Other Event Loop Functions:: -* Converting Events:: -* Dispatching Events; The Command Builder:: -