{
return bt_field_class_structure_member_borrow_field_class(libObjPtr);
}
+
+ static bt_value *userAttributes(bt_field_class_structure_member * const libObjPtr) noexcept
+ {
+ return bt_field_class_structure_member_borrow_user_attributes(libObjPtr);
+ }
};
/* Functions specific to constant structure field class members */
{
return bt_field_class_structure_member_borrow_field_class_const(libObjPtr);
}
+
+ static const bt_value *
+ userAttributes(const bt_field_class_structure_member * const libObjPtr) noexcept
+ {
+ return bt_field_class_structure_member_borrow_user_attributes_const(libObjPtr);
+ }
};
} /* namespace internal */
typename std::conditional<std::is_const<LibObjT>::value, ConstFieldClass, FieldClass>::type;
public:
+ using UserAttributes =
+ typename std::conditional<std::is_const<LibObjT>::value, ConstMapValue, MapValue>::type;
+
explicit CommonStructureFieldClassMember(const _LibObjPtr libObjPtr) noexcept :
_ThisBorrowedObj {libObjPtr}
{
return _FieldClass {
internal::CommonStructureFieldClassMemberSpec<LibObjT>::fieldClass(this->libObjPtr())};
}
+
+ template <typename LibValT>
+ void userAttributes(const CommonMapValue<LibValT>& userAttrs)
+ {
+ static_assert(!std::is_const<LibObjT>::value, "`LibObjT` must NOT be `const`.");
+
+ bt_field_class_structure_member_set_user_attributes(this->libObjPtr(),
+ userAttrs.libObjPtr());
+ }
+
+ ConstMapValue userAttributes() const noexcept
+ {
+ return ConstMapValue {internal::CommonStructureFieldClassMemberSpec<
+ const bt_field_class_structure_member>::userAttributes(this->libObjPtr())};
+ }
+
+ UserAttributes userAttributes() noexcept
+ {
+ return UserAttributes {
+ internal::CommonStructureFieldClassMemberSpec<LibObjT>::userAttributes(
+ this->libObjPtr())};
+ }
};
using StructureFieldClassMember = CommonStructureFieldClassMember<bt_field_class_structure_member>;
{
return bt_field_class_variant_option_borrow_field_class(libObjPtr);
}
+
+ static bt_value *userAttributes(bt_field_class_variant_option * const libObjPtr) noexcept
+ {
+ return bt_field_class_variant_option_borrow_user_attributes(libObjPtr);
+ }
};
/* Functions specific to constant variant field class options */
{
return bt_field_class_variant_option_borrow_field_class_const(libObjPtr);
}
+
+ static const bt_value *
+ userAttributes(const bt_field_class_variant_option * const libObjPtr) noexcept
+ {
+ return bt_field_class_variant_option_borrow_user_attributes_const(libObjPtr);
+ }
};
} /* namespace internal */
typename std::conditional<std::is_const<LibObjT>::value, ConstFieldClass, FieldClass>::type;
public:
+ using UserAttributes =
+ typename std::conditional<std::is_const<LibObjT>::value, ConstMapValue, MapValue>::type;
+
explicit CommonVariantFieldClassOption(const _LibObjPtr libObjPtr) noexcept :
_ThisBorrowedObj {libObjPtr}
{
return _FieldClass {
internal::CommonVariantFieldClassOptionSpec<LibObjT>::fieldClass(this->libObjPtr())};
}
+
+ template <typename LibValT>
+ void userAttributes(const CommonMapValue<LibValT>& userAttrs)
+ {
+ static_assert(!std::is_const<LibObjT>::value, "`LibObjT` must NOT be `const`.");
+
+ bt_field_class_variant_option_set_user_attributes(this->libObjPtr(), userAttrs.libObjPtr());
+ }
+
+ ConstMapValue userAttributes() const noexcept
+ {
+ return ConstMapValue {internal::CommonVariantFieldClassOptionSpec<
+ const bt_field_class_variant_option>::userAttributes(this->libObjPtr())};
+ }
+
+ UserAttributes userAttributes() noexcept
+ {
+ return UserAttributes {internal::CommonVariantFieldClassOptionSpec<LibObjT>::userAttributes(
+ this->libObjPtr())};
+ }
};
using VariantFieldClassOption = CommonVariantFieldClassOption<bt_field_class_variant_option>;