1 /*- 2 * LstEnQueue.c-- 3 * Treat the list as a queue and place a datum at its end 4 * 5 * Copyright (c) 1988 by University of California Regents 6 * 7 * Permission to use, copy, modify, and distribute this 8 * software and its documentation for any purpose and without 9 * fee is hereby granted, provided that the above copyright 10 * notice appears in all copies. Neither the University of California nor 11 * Adam de Boor makes any representations about the suitability of this 12 * software for any purpose. It is provided "as is" without 13 * express or implied warranty. 14 */ 15 #ifndef lint 16 static char *rcsid = 17 "$Id: lstEnQueue.c,v 1.4 88/11/17 20:52:26 adam Exp $ SPRITE (Berkeley)"; 18 #endif lint 19 20 #include "lstInt.h" 21 22 /*- 23 *----------------------------------------------------------------------- 24 * Lst_EnQueue -- 25 * Add the datum to the tail of the given list. 26 * 27 * Results: 28 * SUCCESS or FAILURE as returned by Lst_Append. 29 * 30 * Side Effects: 31 * the lastPtr field is altered all the time and the firstPtr field 32 * will be altered if the list used to be empty. 33 * 34 *----------------------------------------------------------------------- 35 */ 36 ReturnStatus 37 Lst_EnQueue (l, d) 38 Lst l; 39 ClientData d; 40 { 41 if (LstValid (l) == FALSE) { 42 return (FAILURE); 43 } 44 45 return (Lst_Append (l, Lst_Last(l), d)); 46 } 47 48