feat: hectic C: logging settings
This commit is contained in:
@@ -8,6 +8,32 @@
|
||||
#include <assert.h>
|
||||
#include "hectic.h"
|
||||
|
||||
typedef struct {
|
||||
char *prefix_start;
|
||||
char *prefix_end;
|
||||
char *separator_pattern;
|
||||
} HmplSectionTagsOptions;
|
||||
|
||||
typedef struct {
|
||||
char *prefix;
|
||||
} HmplInterpolationTagsOptions;
|
||||
|
||||
typedef struct {
|
||||
HmplSectionTagsOptions section_tags_options;
|
||||
HmplInterpolationTagsOptions interpolation_tags_options;
|
||||
} HmplOptions;
|
||||
|
||||
static const HmplOptions DEFAULT_OPTIONS = {
|
||||
.section_tags_options = {
|
||||
.prefix_start = "",
|
||||
.prefix_end = "/",
|
||||
.separator_pattern = "#"
|
||||
},
|
||||
.interpolation_tags_options = {
|
||||
.prefix = ""
|
||||
}
|
||||
};
|
||||
|
||||
void init_cjson_with_arenas(Arena *arena);
|
||||
|
||||
char *eval_string(Arena *arena, const Json * const context, const char * const key);
|
||||
@@ -15,10 +41,14 @@ char *eval_string(Arena *arena, const Json * const context, const char * const k
|
||||
/* Modified: text is passed by reference so we can update it and free old allocations */
|
||||
void hmpl_render_interpolation_tags(Arena *arena, char **text_ptr, const Json * const context, const char * const prefix);
|
||||
|
||||
void hmpl_render_interpolation_tags_opts(Arena *arena, char **text_ptr, const Json *context, const HmplInterpolationTagsOptions *options);
|
||||
|
||||
void hmpl_render_section_tags(Arena *arena, char **text_ptr, Json *context, const char * const prefix_start, const char * const prefix_end, const char * const separator_pattern);
|
||||
|
||||
void hmpl_render_with_arena(Arena *arena, char **text, const Json * const context);
|
||||
void hmpl_render_section_tags_opts(Arena *arena, char **text_ptr, const Json *context, const HmplSectionTagsOptions *options);
|
||||
|
||||
void hmpl_render(char **text, const Json * const context);
|
||||
void hmpl_render_with_arena(Arena *arena, char **text, const Json * const context, const HmplOptions * const options);
|
||||
|
||||
void hmpl_render(char **text, const Json * const context, const HmplOptions * const options);
|
||||
|
||||
#endif // EPRINTF_HMPL
|
||||
|
||||
Reference in New Issue
Block a user