condition: introduce generic function type for condition_to_string()-like functions
Let's add a typedef for a function type we use at multiple places.
This commit is contained in:
parent
7f19247b5e
commit
dce719f6c1
|
@ -779,7 +779,12 @@ int condition_test(Condition *c) {
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool condition_test_list(Condition *first, const char *(*to_string)(ConditionType t), condition_test_logger_t logger, void *userdata) {
|
bool condition_test_list(
|
||||||
|
Condition *first,
|
||||||
|
condition_to_string_t to_string,
|
||||||
|
condition_test_logger_t logger,
|
||||||
|
void *userdata) {
|
||||||
|
|
||||||
Condition *c;
|
Condition *c;
|
||||||
int triggered = -1;
|
int triggered = -1;
|
||||||
|
|
||||||
|
@ -828,9 +833,10 @@ bool condition_test_list(Condition *first, const char *(*to_string)(ConditionTyp
|
||||||
return triggered != 0;
|
return triggered != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void condition_dump(Condition *c, FILE *f, const char *prefix, const char *(*to_string)(ConditionType t)) {
|
void condition_dump(Condition *c, FILE *f, const char *prefix, condition_to_string_t to_string) {
|
||||||
assert(c);
|
assert(c);
|
||||||
assert(f);
|
assert(f);
|
||||||
|
assert(to_string);
|
||||||
|
|
||||||
prefix = strempty(prefix);
|
prefix = strempty(prefix);
|
||||||
|
|
||||||
|
@ -844,7 +850,7 @@ void condition_dump(Condition *c, FILE *f, const char *prefix, const char *(*to_
|
||||||
condition_result_to_string(c->result));
|
condition_result_to_string(c->result));
|
||||||
}
|
}
|
||||||
|
|
||||||
void condition_dump_list(Condition *first, FILE *f, const char *prefix, const char *(*to_string)(ConditionType t)) {
|
void condition_dump_list(Condition *first, FILE *f, const char *prefix, condition_to_string_t to_string) {
|
||||||
Condition *c;
|
Condition *c;
|
||||||
|
|
||||||
LIST_FOREACH(conditions, c, first)
|
LIST_FOREACH(conditions, c, first)
|
||||||
|
|
|
@ -74,11 +74,13 @@ static inline Condition* condition_free_list(Condition *first) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int condition_test(Condition *c);
|
int condition_test(Condition *c);
|
||||||
typedef int (*condition_test_logger_t)(void *userdata, int level, int error, const char *file, int line, const char *func, const char *format, ...) _printf_(7, 8);
|
|
||||||
bool condition_test_list(Condition *first, const char *(*to_string)(ConditionType t), condition_test_logger_t logger, void *userdata);
|
|
||||||
|
|
||||||
void condition_dump(Condition *c, FILE *f, const char *prefix, const char *(*to_string)(ConditionType t));
|
typedef int (*condition_test_logger_t)(void *userdata, int level, int error, const char *file, int line, const char *func, const char *format, ...) _printf_(7, 8);
|
||||||
void condition_dump_list(Condition *c, FILE *f, const char *prefix, const char *(*to_string)(ConditionType t));
|
typedef const char* (*condition_to_string_t)(ConditionType t);
|
||||||
|
bool condition_test_list(Condition *first, condition_to_string_t, condition_test_logger_t logger, void *userdata);
|
||||||
|
|
||||||
|
void condition_dump(Condition *c, FILE *f, const char *prefix, condition_to_string_t to_string);
|
||||||
|
void condition_dump_list(Condition *c, FILE *f, const char *prefix, condition_to_string_t to_string);
|
||||||
|
|
||||||
const char* condition_type_to_string(ConditionType t) _const_;
|
const char* condition_type_to_string(ConditionType t) _const_;
|
||||||
ConditionType condition_type_from_string(const char *s) _pure_;
|
ConditionType condition_type_from_string(const char *s) _pure_;
|
||||||
|
|
Loading…
Reference in a new issue