123456789101112131415161718192021222324252627282930313233343536 |
- /*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
- /* a hash file */
- struct Ndbhf
- {
- Ndbhf *next;
- int fd;
- uint32_t dbmtime; /* mtime of data base */
- int hlen; /* length (in entries) of hash table */
- char attr[Ndbalen]; /* attribute hashed */
- unsigned char buf[256]; /* hash file buffer */
- long off; /* offset of first byte of buffer */
- int len; /* length of valid data in buffer */
- };
- char* _ndbparsetuple(char*, Ndbtuple**);
- Ndbtuple* _ndbparseline(char*);
- #define ISWHITE(x) ((x) == ' ' || (x) == '\t' || (x) == '\r')
- #define EATWHITE(x) while(ISWHITE(*(x)))(x)++
- extern Ndbtuple *_ndbtfree;
- /* caches */
- void _ndbcacheflush(Ndb *db);
- int _ndbcachesearch(Ndb *db, Ndbs *s, char *attr, char *val, Ndbtuple **t);
- Ndbtuple* _ndbcacheadd(Ndb *db, Ndbs *s, char *attr, char *val, Ndbtuple *t);
|