X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fctf-ir%2Ffield-path-internal.h;h=66f44cfaddfbbcdc90d36406e9495f5fda90aea4;hb=fdf0e7a0859aac0e7a540ded801921bdb14cb450;hp=b270094baaffd20691f3a7be7903d6dd7e70fa00;hpb=331b8d44fe96f3a5e5d8a177e0eebda9838ac8d5;p=babeltrace.git diff --git a/include/babeltrace/ctf-ir/field-path-internal.h b/include/babeltrace/ctf-ir/field-path-internal.h index b270094b..66f44cfa 100644 --- a/include/babeltrace/ctf-ir/field-path-internal.h +++ b/include/babeltrace/ctf-ir/field-path-internal.h @@ -29,6 +29,7 @@ */ #include +#include #include struct bt_ctf_field_path { @@ -54,7 +55,30 @@ BT_HIDDEN struct bt_ctf_field_path *bt_ctf_field_path_copy( struct bt_ctf_field_path *path); -BT_HIDDEN -GString *bt_ctf_field_path_string(struct bt_ctf_field_path *path); +static inline +GString *bt_ctf_field_path_string(struct bt_ctf_field_path *path) +{ + GString *str = g_string_new(NULL); + size_t i; + + assert(path); + + if (!str) { + goto end; + } + + g_string_append_printf(str, "[%s", bt_ctf_scope_string(path->root)); + + for (i = 0; i < path->indexes->len; i++) { + int index = g_array_index(path->indexes, int, i); + + g_string_append_printf(str, ", %d", index); + } + + g_string_append(str, "]"); + +end: + return str; +} #endif /* BABELTRACE_CTF_IR_FIELD_PATH_INTERNAL */