| #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 |