typename std::conditional<std::is_const<LibObjT>::value, ConstVariantFieldClassOption,
VariantFieldClassOption>::type;
- using Iterator = CommonIterator<CommonVariantFieldClass<LibObjT>, Option>;
+ using Iterator = CommonIterator<CommonVariantFieldClass, Option>;
explicit CommonVariantFieldClass(const _LibObjPtr libObjPtr) noexcept :
_ThisCommonFieldClass {libObjPtr}
}
};
+using VariantWithSelectorFieldClass = CommonVariantWithSelectorFieldClass<bt_field_class>;
+using ConstVariantWithSelectorFieldClass =
+ CommonVariantWithSelectorFieldClass<const bt_field_class>;
+
template <typename LibObjT, typename OptionT>
class CommonVariantWithIntegerSelectorFieldClass :
public CommonVariantWithSelectorFieldClass<LibObjT>
internal::SharedFieldClass<_ThisCommonVariantWithIntegerSelectorFieldClass, LibObjT>;
using Option = OptionT;
+ using Iterator =
+ CommonIterator<CommonVariantWithIntegerSelectorFieldClass<LibObjT, Option>, Option>;
explicit CommonVariantWithIntegerSelectorFieldClass(const _LibObjPtr libObjPtr) noexcept :
_ThisCommonVariantWithSelectorFieldClass {libObjPtr}
this->appendOption(name.data(), fc);
}
+ Iterator begin() const noexcept
+ {
+ return Iterator {*this, 0};
+ }
+
+ Iterator end() const noexcept
+ {
+ return Iterator {*this, this->size()};
+ }
+
Shared shared() const noexcept
{
return Shared {*this};