#include <stdint.h>
#include <stddef.h>
-/* For bt_bool */
#include <babeltrace/babeltrace.h>
#include <babeltrace/ctf-ir/fields-internal.h>
#include <babeltrace/ctf-writer/fields.h>
#include <babeltrace/ctf-writer/serialize-internal.h>
+struct bt_ctf_field_enumeration {
+ struct bt_field_common common;
+ struct bt_field_common_integer *container;
+};
+
+struct bt_ctf_field_variant {
+ struct bt_field_common_variant common;
+ struct bt_ctf_field_enumeration *tag;
+};
+
BT_HIDDEN
int bt_ctf_field_serialize_recursive(struct bt_ctf_field *field,
struct bt_ctf_stream_pos *pos,
enum bt_ctf_byte_order native_byte_order);
+BT_HIDDEN
+int bt_ctf_field_structure_set_field_by_name(struct bt_ctf_field *field,
+ const char *name, struct bt_ctf_field *value);
+
+BT_HIDDEN
+struct bt_ctf_field *bt_ctf_field_enumeration_borrow_container(
+ struct bt_ctf_field *field);
+
static inline
bt_bool bt_ctf_field_is_set_recursive(struct bt_ctf_field *field)
{