xref: /csrg-svn/usr.bin/pascal/libpc/IN.c (revision 1658)
1*1658Smckusick /* Copyright (c) 1979 Regents of the University of California */
2*1658Smckusick 
3*1658Smckusick static char sccsid[] = "@(#)IN.c 1.1 10/30/80";
4*1658Smckusick 
5*1658Smckusick #include "h00vars.h"
6*1658Smckusick 
7*1658Smckusick IN(element, lower, upper, setptr)
8*1658Smckusick 
9*1658Smckusick 	int	element;	/* element to check */
10*1658Smckusick 	int	lower;		/* lowest element of set */
11*1658Smckusick 	int	upper;		/* upper - lower of set */
12*1658Smckusick 	char	setptr[];	/* pointer to set */
13*1658Smckusick {
14*1658Smckusick 	int	indx;
15*1658Smckusick 
16*1658Smckusick 	if ((indx = element - lower) < 0 || indx > upper)
17*1658Smckusick 		return FALSE;
18*1658Smckusick 	if (setptr[indx / BITSPERBYTE] & (1 << (indx % BITSPERBYTE)))
19*1658Smckusick 		return TRUE;
20*1658Smckusick 	return FALSE;
21*1658Smckusick }
22