#ifndef REV_CACHE_H #define REV_CACHE_H extern struct rev_cache { struct rev_cache *head_list; struct rev_list_elem *children; struct rev_list_elem *parents; struct rev_list_elem *parents_tail; unsigned short num_parents; unsigned short num_children; unsigned int written : 1; unsigned int parsed : 1; unsigned int work : 30; void *work_ptr; unsigned char sha1[20]; } **rev_cache; extern int nr_revs, alloc_revs; struct rev_list_elem { struct rev_list_elem *next; struct rev_cache *ri; }; extern int find_rev_cache(const unsigned char *); extern int read_rev_cache(const char *, FILE *, int); extern int record_rev_cache(const unsigned char *, FILE *); extern void write_rev_cache(const char *new, const char *old); #endif