about summary refs log tree commit diff stats
path: root/WWW/Library/Implementation/HTAtom.h
blob: b8dd10ec0b0002e4752b4d9501b765bb87d82794 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*  */

/*                      Atoms: Names to numbers                 HTAtom.h
**                      =======================
**
**      Atoms are names which are given representative pointer values
**      so that they can be stored more efficiently, and compaisons
**      for equality done more efficiently.
**
**      HTAtom_for(string) returns a representative value such that it
**      will always (within one run of the program) return the same
**      value for the same given string.
**
** Authors:
**      TBL     Tim Berners-Lee, WorldWideWeb project, CERN
**
**      (c) Copyright CERN 1991 - See Copyright.html
**
*/

#ifndef HTATOM_H
#define HTATOM_H

#ifndef HTUTILS_H
#include "HTUtils.h"
#endif /* HTUTILS_H */
#include "HTList.h"

#ifdef SHORT_NAMES
#define HTAt_for        HTAtom_for
#define HTAt_tMa        HTAtom_templateMatches
#endif /*SHORT_NAMES*/

typedef struct _HTAtom HTAtom;
struct _HTAtom {
        HTAtom *        next;
        char *          name;
}; /* struct _HTAtom */


PUBLIC HTAtom * HTAtom_for PARAMS((CONST char * string));
PUBLIC HTList * HTAtom_templateMatches PARAMS((CONST char * templ));

#define HTAtom_name(a) ((a)->name)

#endif  /* HTATOM_H */
/*

    */