diff options
Diffstat (limited to 'wrapperhelper/src/generator.h')
| -rw-r--r-- | wrapperhelper/src/generator.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/wrapperhelper/src/generator.h b/wrapperhelper/src/generator.h index ef27ad0a..fd41862d 100644 --- a/wrapperhelper/src/generator.h +++ b/wrapperhelper/src/generator.h @@ -37,14 +37,24 @@ typedef struct request_s { }; } def, val; } request_t; -VECTOR_DECLARE(requests, request_t) +typedef struct reference_s { + enum { + REF_REQ, + REF_LINE, + } typ; + union { + request_t req; + string_t *line; + }; +} reference_t; +VECTOR_DECLARE(references, reference_t) void request_print(request_t *req); void request_print_check(request_t *req); -void output_from_requests(FILE *f, VECTOR(requests) *reqs); +void output_from_references(FILE *f, VECTOR(references) *reqs); -VECTOR(requests) *requests_from_file(const char *filename, FILE *f); // Takes ownership of f +VECTOR(references) *references_from_file(const char *filename, FILE *f); // Takes ownership of f int solve_request(request_t *req, type_t *typ); int solve_request_map(request_t *req, khash_t(type_map) *decl_map); -int solve_requests(VECTOR(requests) *reqs, khash_t(type_map) *decl_map); +int solve_references(VECTOR(references) *reqs, khash_t(type_map) *decl_map); #endif // GENERATOR_H |