+struct bt_field_class_structure_member *
+bt_field_class_structure_borrow_member_by_name(
+ struct bt_field_class *fc, const char *name)
+{
+ BT_ASSERT_PRE_NON_NULL(fc, "Field class");
+ BT_ASSERT_PRE_FC_HAS_ID(fc, BT_FIELD_CLASS_TYPE_STRUCTURE,
+ "Field class");
+ return (void *)
+ borrow_named_field_class_from_container_field_class_by_name(
+ (void *) fc, name);
+}
+
+const char *bt_field_class_structure_member_get_name(
+ const struct bt_field_class_structure_member *member)
+{
+ const struct bt_named_field_class *named_fc = (const void *) member;
+
+ BT_ASSERT_PRE_NON_NULL(member, "Structure field class member");
+ return named_fc->name->str;
+}
+
+const struct bt_field_class *
+bt_field_class_structure_member_borrow_field_class_const(
+ const struct bt_field_class_structure_member *member)
+{
+ const struct bt_named_field_class *named_fc = (const void *) member;
+
+ BT_ASSERT_PRE_NON_NULL(member, "Structure field class member");
+ return named_fc->fc;
+}
+
+struct bt_field_class *
+bt_field_class_structure_member_borrow_field_class(
+ struct bt_field_class_structure_member *member)
+{
+ struct bt_named_field_class *named_fc = (void *) member;
+
+ BT_ASSERT_PRE_NON_NULL(member, "Structure field class member");
+ return named_fc->fc;
+}
+