interpret/src/source.h

41 lines
1.2 KiB
C

#if defined BASE \
|| !defined BASE && !defined GENERIC && !defined PROTO /* <!-- base */
#include "helper.h"
/*void kjvcite_to_string(const union kjvcite, char (*)[12]);*/
#endif /* base --> */
#if defined GENERIC \
|| !defined BASE && !defined GENERIC && !defined PROTO /* <!-- generic */
struct tree_source_node;
struct tree_source_tree { struct tree_source_node *node; unsigned height; };
struct source_tree { struct tree_source_tree root; };
struct tree_source_ref { struct tree_source_node *node; unsigned height, idx; };
struct tree_source_iterator {
struct tree_source_tree *root; struct tree_source_ref ref; int seen;
};
struct source_tree_iterator { struct tree_source_iterator _; };
#endif /* generic --> */
#if defined PROTO \
|| !defined BASE && !defined GENERIC && !defined PROTO /* <!-- proto */
#include <stddef.h>
struct sources { struct source_tree _; };
struct source *sources_add(struct sources *, const union line64);
struct sources sources(struct journal *);
void sources_(struct sources *);
const char *sources_to_string(const struct sources *);
/* And some query... */
#endif /* proto --> */
#ifdef BASE
#undef BASE
#endif
#ifdef GENERIC
#undef GENERIC
#endif
#ifdef PROTO
#undef PROTO
#endif