Mercurial > emacs
annotate oldXMenu/insque.c @ 107437:0a2bb00a71bd
* s-region.el: Move to obsolete.
| author | Juri Linkov <juri@jurta.org> |
|---|---|
| date | Sat, 20 Mar 2010 03:29:12 +0200 |
| parents | 1d1d5d9bd884 |
| children | 5cc91198ffb2 376148b31b5e |
| rev | line source |
|---|---|
| 100953 | 1 /* |
| 2 Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002, 2003, | |
| 106815 | 3 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |
| 75059 | 4 |
|
94791
3765d76f7fa8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79743
diff
changeset
|
5 This program is free software: you can redistribute it and/or modify |
| 75059 | 6 it under the terms of the GNU General Public License as published by |
|
94791
3765d76f7fa8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79743
diff
changeset
|
7 the Free Software Foundation, either version 3 of the License, or |
|
3765d76f7fa8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79743
diff
changeset
|
8 (at your option) any later version. |
| 75059 | 9 |
| 10 This program is distributed in the hope that it will be useful, | |
| 11 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 13 GNU General Public License for more details. | |
| 14 | |
| 15 You should have received a copy of the GNU General Public License | |
|
94791
3765d76f7fa8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79743
diff
changeset
|
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
|
65000
3861ff8f4bf1
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
52401
diff
changeset
|
17 |
| 25858 | 18 /* This file implements the emacs_insque and emacs_remque functions, |
| 75059 | 19 clones of the insque and remque functions of BSD. They and all |
| 25858 | 20 their callers have been renamed to emacs_mumble to allow us to |
| 21 include this file in the menu library on all systems. */ | |
| 22 | |
| 23 | |
| 24 struct qelem { | |
| 25 struct qelem *q_forw; | |
| 26 struct qelem *q_back; | |
| 27 char q_data[1]; | |
| 28 }; | |
| 29 | |
| 30 /* Insert ELEM into a doubly-linked list, after PREV. */ | |
| 31 | |
| 32 void | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
33 emacs_insque (elem, prev) |
| 25858 | 34 struct qelem *elem, *prev; |
| 35 { | |
| 36 struct qelem *next = prev->q_forw; | |
| 37 prev->q_forw = elem; | |
| 38 if (next) | |
| 39 next->q_back = elem; | |
| 40 elem->q_forw = next; | |
| 41 elem->q_back = prev; | |
| 42 } | |
| 43 | |
| 44 /* Unlink ELEM from the doubly-linked list that it is in. */ | |
| 45 | |
| 46 emacs_remque (elem) | |
| 47 struct qelem *elem; | |
| 48 { | |
| 49 struct qelem *next = elem->q_forw; | |
| 50 struct qelem *prev = elem->q_back; | |
| 51 if (next) | |
| 52 next->q_back = prev; | |
| 53 if (prev) | |
| 54 prev->q_forw = next; | |
| 55 } | |
| 52401 | 56 |
| 57 /* arch-tag: a8719d1a-5c3f-4bce-b36b-173106d36165 | |
| 58 (do not change this comment) */ |
