diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-05-05 14:58:37 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2018-05-05 14:58:37 +0100 |
commit | a3191bd7b34d3373d151827a6e6592ea82084747 (patch) | |
tree | ab4ecb6c138e1a21cb76aeaf4503d04a253568ae /contrib/libucl/ucl_internal.h | |
parent | 91154ccc0114f1dca3b803a9c9bcfd065297c329 (diff) | |
download | rspamd-a3191bd7b34d3373d151827a6e6592ea82084747.tar.gz rspamd-a3191bd7b34d3373d151827a6e6592ea82084747.zip |
[Feture] Allow external preprocessors in libucl
Diffstat (limited to 'contrib/libucl/ucl_internal.h')
-rw-r--r-- | contrib/libucl/ucl_internal.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/contrib/libucl/ucl_internal.h b/contrib/libucl/ucl_internal.h index d60581037..4ddc713b5 100644 --- a/contrib/libucl/ucl_internal.h +++ b/contrib/libucl/ucl_internal.h @@ -176,7 +176,7 @@ enum ucl_character_type { struct ucl_macro { char *name; - union { + union _ucl_macro { ucl_macro_handler handler; ucl_context_macro_handler context_handler; } h; @@ -201,6 +201,7 @@ struct ucl_chunk { unsigned priority; enum ucl_duplicate_strategy strategy; enum ucl_parse_type parse_type; + struct ucl_parser_special_handler *special_handler; struct ucl_chunk *next; }; @@ -239,6 +240,7 @@ struct ucl_parser { struct ucl_stack *stack; struct ucl_chunk *chunks; struct ucl_pubkey *keys; + struct ucl_parser_special_handler *special_handlers; struct ucl_variable *variables; ucl_variable_handler var_handler; void *var_data; @@ -619,4 +621,10 @@ bool ucl_parse_msgpack (struct ucl_parser *parser); bool ucl_parse_csexp (struct ucl_parser *parser); +/** + * Free ucl chunk + * @param chunk + */ +void ucl_chunk_free (struct ucl_chunk *chunk); + #endif /* UCL_INTERNAL_H_ */ |