diff options
author | Vicent Marti <tanoku@gmail.com> | 2014-09-10 18:33:27 +0200 |
---|---|---|
committer | Vicent Marti <tanoku@gmail.com> | 2014-09-10 18:33:27 +0200 |
commit | 94a79a605f3e76a43f1f87a5044f6761b99e5ca5 (patch) | |
tree | 76a24ad88117cf4948eebaf6b42c86d75fe7d1e2 /src/references.h | |
parent | 9d86d2f32303ae0048f6a5daa552bacceb9b12ea (diff) |
Cleanup reference implementation
Diffstat (limited to 'src/references.h')
-rw-r--r-- | src/references.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/references.h b/src/references.h new file mode 100644 index 0000000..78fffe7 --- /dev/null +++ b/src/references.h @@ -0,0 +1,27 @@ +#ifndef _REFERENCES_H_ +#define _REFERENCES_H_ + +#define REFMAP_SIZE 16 + +struct reference { + struct reference *next; + unsigned char *label; + unsigned char *url; + unsigned char *title; + unsigned int hash; +}; + +typedef struct reference reference; + +struct reference_map { + reference *table[REFMAP_SIZE]; +}; + +typedef struct reference_map reference_map; + +reference_map *reference_map_new(void); +void reference_map_free(reference_map *map); +reference* reference_lookup(reference_map *map, chunk *label); +extern reference *reference_create(reference_map *map, chunk *label, chunk *url, chunk *title); + +#endif |