1*40412Sbostic /* 2*40412Sbostic * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. 3*40412Sbostic * All rights reserved. 440411Sbostic * 5*40412Sbostic * This code is derived from software contributed to Berkeley by 6*40412Sbostic * Adam de Boor. 740411Sbostic * 8*40412Sbostic * Redistribution and use in source and binary forms are permitted 9*40412Sbostic * provided that the above copyright notice and this paragraph are 10*40412Sbostic * duplicated in all such forms and that any documentation, 11*40412Sbostic * advertising materials, and other materials related to such 12*40412Sbostic * distribution and use acknowledge that the software was developed 13*40412Sbostic * by the University of California, Berkeley. The name of the 14*40412Sbostic * University may not be used to endorse or promote products derived 15*40412Sbostic * from this software without specific prior written permission. 16*40412Sbostic * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 17*40412Sbostic * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 18*40412Sbostic * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 1940411Sbostic */ 20*40412Sbostic 2140411Sbostic #ifndef lint 22*40412Sbostic static char sccsid[] = "@(#)lstMember.c 5.2 (Berkeley) 03/11/90"; 23*40412Sbostic #endif /* not lint */ 2440411Sbostic 25*40412Sbostic /*- 26*40412Sbostic * lstMember.c -- 27*40412Sbostic * See if a given datum is on a given list. 28*40412Sbostic */ 29*40412Sbostic 3040411Sbostic #include "lstInt.h" 3140411Sbostic 3240411Sbostic LstNode 3340411Sbostic Lst_Member (l, d) 3440411Sbostic Lst l; 3540411Sbostic ClientData d; 3640411Sbostic { 3740411Sbostic List list = (List) l; 3840411Sbostic register ListNode lNode; 3940411Sbostic 4040411Sbostic lNode = list->firstPtr; 4140411Sbostic if (lNode == NilListNode) { 4240411Sbostic return NILLNODE; 4340411Sbostic } 4440411Sbostic 4540411Sbostic do { 4640411Sbostic if (lNode->datum == d) { 4740411Sbostic return (LstNode)lNode; 4840411Sbostic } 4940411Sbostic lNode = lNode->nextPtr; 5040411Sbostic } while (lNode != NilListNode && lNode != list->firstPtr); 5140411Sbostic 5240411Sbostic return NILLNODE; 5340411Sbostic } 54