yambar/particles/map.h
2024-09-16 10:39:12 -05:00

38 lines
707 B
C

#pragma once
enum map_op {
MAP_OP_EQ,
MAP_OP_NE,
MAP_OP_LE,
MAP_OP_LT,
MAP_OP_GE,
MAP_OP_GT,
MAP_OP_SELF,
MAP_OP_NOT,
MAP_OP_LIKE,
MAP_OP_AND,
MAP_OP_OR,
};
struct map_condition {
union {
char *tag;
struct map_condition *cond1;
};
enum map_op op;
union {
char *value;
struct map_condition *cond2;
};
};
void free_map_condition(struct map_condition *c);
typedef struct yy_buffer_state *YY_BUFFER_STATE;
YY_BUFFER_STATE yy_scan_string(const char *str);
int yyparse();
void yy_delete_buffer(YY_BUFFER_STATE buffer);
extern struct map_condition *MAP_CONDITION_PARSE_RESULT;
extern char *MAP_PARSER_ERROR_MSG;