X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=lib%2Ftrace-ir%2Fresolve-field-path.c;h=00ec6447b49fd9f00e75ac814a21bb44a6271180;hb=35fa110e5bea4a35497313adf3e3d0fa09db9ff7;hp=b86109952d06bac3494f07b381d5cf0f94909d36;hpb=939190b374e61ac2a31e38ecc6c31f2f986690ab;p=babeltrace.git diff --git a/lib/trace-ir/resolve-field-path.c b/lib/trace-ir/resolve-field-path.c index b8610995..00ec6447 100644 --- a/lib/trace-ir/resolve-field-path.c +++ b/lib/trace-ir/resolve-field-path.c @@ -25,9 +25,9 @@ #include #include -#include +#include #include -#include +#include #include #include #include @@ -45,9 +45,9 @@ bool find_field_class_recursive(struct bt_field_class *fc, goto end; } - switch (fc->id) { - case BT_FIELD_CLASS_ID_STRUCTURE: - case BT_FIELD_CLASS_ID_VARIANT: + switch (fc->type) { + case BT_FIELD_CLASS_TYPE_STRUCTURE: + case BT_FIELD_CLASS_TYPE_VARIANT: { struct bt_field_class_named_field_class_container *container_fc = (void *) fc; @@ -71,8 +71,8 @@ bool find_field_class_recursive(struct bt_field_class *fc, break; } - case BT_FIELD_CLASS_ID_STATIC_ARRAY: - case BT_FIELD_CLASS_ID_DYNAMIC_ARRAY: + case BT_FIELD_CLASS_TYPE_STATIC_ARRAY: + case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY: { struct bt_field_class_array *array_fc = (void *) fc; @@ -109,7 +109,7 @@ int find_field_class(struct bt_field_class *root_fc, field_path->root = root_scope; if (!find_field_class_recursive(root_fc, tgt_fc, field_path)) { /* Not found here */ - BT_PUT(field_path); + BT_OBJECT_PUT_REF_AND_RESET(field_path); } end: @@ -235,9 +235,9 @@ struct bt_field_class *borrow_child_field_class(struct bt_field_class *parent_fc { struct bt_field_class *child_fc = NULL; - switch (parent_fc->id) { - case BT_FIELD_CLASS_ID_STRUCTURE: - case BT_FIELD_CLASS_ID_VARIANT: + switch (parent_fc->type) { + case BT_FIELD_CLASS_TYPE_STRUCTURE: + case BT_FIELD_CLASS_TYPE_VARIANT: { struct bt_named_field_class *named_fc = BT_FIELD_CLASS_NAMED_FC_AT_INDEX(parent_fc, index); @@ -246,8 +246,8 @@ struct bt_field_class *borrow_child_field_class(struct bt_field_class *parent_fc *advance = true; break; } - case BT_FIELD_CLASS_ID_STATIC_ARRAY: - case BT_FIELD_CLASS_ID_DYNAMIC_ARRAY: + case BT_FIELD_CLASS_TYPE_STATIC_ARRAY: + case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY: { struct bt_field_class_array *array_fc = (void *) parent_fc; @@ -284,9 +284,9 @@ bool target_field_path_in_different_scope_has_struct_fc_only( tgt_field_path, i); bool advance; - if (fc->id == BT_FIELD_CLASS_ID_STATIC_ARRAY || - fc->id == BT_FIELD_CLASS_ID_DYNAMIC_ARRAY || - fc->id == BT_FIELD_CLASS_ID_VARIANT) { + if (fc->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || + fc->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY || + fc->type == BT_FIELD_CLASS_TYPE_VARIANT) { is_valid = false; goto end; } @@ -335,13 +335,13 @@ bool lca_is_structure_field_class(struct bt_field_path *src_field_path, if (!prev_fc) { /* * This is correct: the LCA is the root - * scope field classe, which must be a - * structure field classe. + * scope field class, which must be a + * structure field class. */ break; } - if (prev_fc->id != BT_FIELD_CLASS_ID_STRUCTURE) { + if (prev_fc->type != BT_FIELD_CLASS_TYPE_STRUCTURE) { is_valid = false; } @@ -420,9 +420,9 @@ bool lca_to_target_has_struct_fc_only(struct bt_field_path *src_field_path, uint64_t tgt_index = bt_field_path_get_index_by_index_inline( tgt_field_path, tgt_i); - if (tgt_fc->id == BT_FIELD_CLASS_ID_STATIC_ARRAY || - tgt_fc->id == BT_FIELD_CLASS_ID_DYNAMIC_ARRAY || - tgt_fc->id == BT_FIELD_CLASS_ID_VARIANT) { + if (tgt_fc->type == BT_FIELD_CLASS_TYPE_STATIC_ARRAY || + tgt_fc->type == BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY || + tgt_fc->type == BT_FIELD_CLASS_TYPE_VARIANT) { is_valid = false; goto end; } @@ -451,14 +451,14 @@ bool field_path_is_valid(struct bt_field_class *src_fc, tgt_fc, ctx); if (!src_field_path) { - BT_ASSERT_PRE_MSG("Cannot find requesting field classe in " + BT_ASSERT_PRE_MSG("Cannot find requesting field class in " "resolving context: %!+F", src_fc); is_valid = false; goto end; } if (!tgt_field_path) { - BT_ASSERT_PRE_MSG("Cannot find target field classe in " + BT_ASSERT_PRE_MSG("Cannot find target field class in " "resolving context: %!+F", tgt_fc); is_valid = false; goto end; @@ -466,8 +466,8 @@ bool field_path_is_valid(struct bt_field_class *src_fc, /* Target must be before source */ if (!target_is_before_source(src_field_path, tgt_field_path)) { - BT_ASSERT_PRE_MSG("Target field classe is located after " - "requesting field classe: %![req-fc-]+F, %![tgt-fc-]+F", + BT_ASSERT_PRE_MSG("Target field class is located after " + "requesting field class: %![req-fc-]+F, %![tgt-fc-]+F", src_fc, tgt_fc); is_valid = false; goto end; @@ -479,19 +479,19 @@ bool field_path_is_valid(struct bt_field_class *src_fc, */ if (!target_field_path_in_different_scope_has_struct_fc_only( src_field_path, tgt_field_path, ctx)) { - BT_ASSERT_PRE_MSG("Target field classe is located in a " - "different scope than requesting field classe, " - "but within an array or a variant field classe: " + BT_ASSERT_PRE_MSG("Target field class is located in a " + "different scope than requesting field class, " + "but within an array or a variant field class: " "%![req-fc-]+F, %![tgt-fc-]+F", src_fc, tgt_fc); is_valid = false; goto end; } - /* Same scope: LCA must be a structure field classe */ + /* Same scope: LCA must be a structure field class */ if (!lca_is_structure_field_class(src_field_path, tgt_field_path, ctx)) { BT_ASSERT_PRE_MSG("Lowest common ancestor of target and " - "requesting field classes is not a structure field classe: " + "requesting field classes is not a structure field class: " "%![req-fc-]+F, %![tgt-fc-]+F", src_fc, tgt_fc); is_valid = false; @@ -502,16 +502,16 @@ bool field_path_is_valid(struct bt_field_class *src_fc, if (!lca_to_target_has_struct_fc_only(src_field_path, tgt_field_path, ctx)) { BT_ASSERT_PRE_MSG("Path from lowest common ancestor of target " - "and requesting field classes to target field classe " - "contains an array or a variant field classe: " + "and requesting field classes to target field class " + "contains an array or a variant field class: " "%![req-fc-]+F, %![tgt-fc-]+F", src_fc, tgt_fc); is_valid = false; goto end; } end: - bt_put(src_field_path); - bt_put(tgt_field_path); + bt_object_put_ref(src_field_path); + bt_object_put_ref(tgt_field_path); return is_valid; } @@ -521,7 +521,7 @@ struct bt_field_path *resolve_field_path(struct bt_field_class *src_fc, struct bt_resolve_field_path_context *ctx) { BT_ASSERT_PRE(field_path_is_valid(src_fc, tgt_fc, ctx), - "Invalid target field classe: %![req-fc-]+F, %![tgt-fc-]+F", + "Invalid target field class: %![req-fc-]+F, %![tgt-fc-]+F", src_fc, tgt_fc); return find_field_class_in_ctx(tgt_fc, ctx); } @@ -535,8 +535,8 @@ int bt_resolve_field_paths(struct bt_field_class *fc, BT_ASSERT(fc); /* Resolving part for dynamic array and variant field classes */ - switch (fc->id) { - case BT_FIELD_CLASS_ID_DYNAMIC_ARRAY: + switch (fc->type) { + case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY: { struct bt_field_class_dynamic_array *dyn_array_fc = (void *) fc; @@ -552,7 +552,7 @@ int bt_resolve_field_paths(struct bt_field_class *fc, break; } - case BT_FIELD_CLASS_ID_VARIANT: + case BT_FIELD_CLASS_TYPE_VARIANT: { struct bt_field_class_variant *var_fc = (void *) fc; @@ -572,9 +572,9 @@ int bt_resolve_field_paths(struct bt_field_class *fc, } /* Recursive part */ - switch (fc->id) { - case BT_FIELD_CLASS_ID_STRUCTURE: - case BT_FIELD_CLASS_ID_VARIANT: + switch (fc->type) { + case BT_FIELD_CLASS_TYPE_STRUCTURE: + case BT_FIELD_CLASS_TYPE_VARIANT: { struct bt_field_class_named_field_class_container *container_fc = (void *) fc; @@ -593,8 +593,8 @@ int bt_resolve_field_paths(struct bt_field_class *fc, break; } - case BT_FIELD_CLASS_ID_STATIC_ARRAY: - case BT_FIELD_CLASS_ID_DYNAMIC_ARRAY: + case BT_FIELD_CLASS_TYPE_STATIC_ARRAY: + case BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY: { struct bt_field_class_array *array_fc = (void *) fc;