#ifndef INDEX_H #define INDEX_H #include typedef struct index index; struct index { uint8_t type; /* Index type. (0 = Named index, 1 = Numbered index) */ union { char *name; /* Named index. */ uint64_t num; /* Numbered index. */ }; index *next; /* Next index. */ }; extern int is_valid_index(index *idx); extern char *make_index_path(const char *root, index *idx, int path_type); extern char *index_to_str(index *idx); extern int index_path_exists(index *idx, const char *root, char **path); #endif