X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=include%2Flttng%2Fevent-expr-internal.h;h=d40f2fa017f272ec12961e49cda9e59d69a7dd2d;hb=740da7d5000ca1ffdcf14bda5096bf7ccfb86bdd;hp=048aaff18665b3a73de50ca38829a4f504442e7a;hpb=1aa9c49c60b7d7370ceafc3ac076de423de22b7f;p=lttng-tools.git diff --git a/include/lttng/event-expr-internal.h b/include/lttng/event-expr-internal.h index 048aaff18..d40f2fa01 100644 --- a/include/lttng/event-expr-internal.h +++ b/include/lttng/event-expr-internal.h @@ -8,11 +8,15 @@ #ifndef LTTNG_EVENT_EXPR_INTERNAL_H #define LTTNG_EVENT_EXPR_INTERNAL_H -#include #include #include +#ifdef __cplusplus +extern "C" { +#endif + struct lttng_bytecode; +struct mi_writer; struct lttng_event_expr { enum lttng_event_expr_type type; @@ -50,15 +54,22 @@ struct lttng_event_expr_array_field_element { static inline bool lttng_event_expr_is_lvalue(const struct lttng_event_expr *expr) { - assert(expr); + LTTNG_ASSERT(expr); return expr->type == LTTNG_EVENT_EXPR_TYPE_EVENT_PAYLOAD_FIELD || expr->type == LTTNG_EVENT_EXPR_TYPE_CHANNEL_CONTEXT_FIELD || expr->type == LTTNG_EVENT_EXPR_TYPE_APP_SPECIFIC_CONTEXT_FIELD || expr->type == LTTNG_EVENT_EXPR_TYPE_ARRAY_FIELD_ELEMENT; } -LTTNG_HIDDEN int lttng_event_expr_to_bytecode(const struct lttng_event_expr *expr, struct lttng_bytecode **bytecode_out); +enum lttng_error_code lttng_event_expr_mi_serialize( + const struct lttng_event_expr *expression, + struct mi_writer *writer); + +#ifdef __cplusplus +} +#endif + #endif /* LTTNG_EVENT_EXPR_INTERNAL_H */