diff options
Diffstat (limited to 'man3/insque.3')
-rw-r--r-- | man3/insque.3 | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/man3/insque.3 b/man3/insque.3 new file mode 100644 index 000000000..c33575436 --- /dev/null +++ b/man3/insque.3 @@ -0,0 +1,75 @@ +.\" peter memishian -- meem@gnu.ai.mit.edu +.\" $Id: insque.3,v 1.2 1996/10/30 21:03:39 meem Exp meem $ +.\" +.\" Permission is granted to make and distribute verbatim copies of this +.\" manual provided the copyright notice and this permission notice are +.\" preserved on all copies. +.\" +.\" Permission is granted to copy and distribute modified versions of this +.\" manual under the conditions for verbatim copying, provided that the +.\" entire resulting derived work is distributed under the terms of a +.\" permission notice identical to this one. +.\" +.\" Since the Linux kernel and libraries are constantly changing, this +.\" manual page may be incorrect or out-of-date. The author(s) assume no +.\" responsibility for errors or omissions, or for damages resulting from +.\" the use of the information contained herein. The author(s) may not +.\" have taken the same level of care in the production of this manual, +.\" which is licensed free of charge, as they might when working +.\" professionally. +.\" +.\" Formatted or processed versions of this manual, if unaccompanied by +.\" the source, must acknowledge the copyright and authors of this work. +.\" +.\" References consulted: +.\" Linux libc source code (5.4.7) +.\" Solaris 2.x, OSF/1, and HP-UX manpages +.\" Curry's "UNIX Systems Programming for SVR4" (O'Reilly & Associates 1996) +.\" +.\" Changed to POSIX, 2003-08-11, aeb+wh +.\" +.TH INSQUE 3 2003-08-11 "" "Linux Programmer's Manual" +.SH NAME +insque, remque \- insert/remove an item from a queue +.SH SYNOPSIS +.nf +.B #include <search.h> +.sp +.BI "void insque(void *" elem ", void *" prev ); +.BI "void remque(void *" elem ); +.SH DESCRIPTION +\fBinsque()\fP and \fBremque()\fP are functions for manipulating +doubly-linked lists. Each element in the list is a structure of +which the first two structure elements are a forward and a +backward pointer. + +\fBinsque()\fP inserts the element pointed to by \fIelem\fP +immediately after the element pointed to by \fIprev\fP, which must +not be NULL. + +\fBremque()\fP removes the element pointed to by \fIelem\fP from the +doubly-linked list. +.SH "CONFORMING TO" +POSIX 1003.1-2001 +.SH "HISTORICAL NOTES" +Traditionally (e.g. SunOS, Linux libc 4,5) the parameters of these +functions were of type \fBstruct qelem *\fP, where the struct +is defined as + +.RS +.nf +struct qelem { + struct qelem *q_forw; + struct qelem *q_back; + char q_data[1]; +}; +.fi +.RE + +This is still what you will get if _GNU_SOURCE is defined before +including <search.h>. + +The location of the prototypes for these functions differs among several +versions of UNIX. The above is the POSIX version. +Some systems place them in <string.h>. Linux libc4,5 placed them +in <stdlib.h>. |