-
-lst::variant_type::variant_type(unsigned int in_alignment,
- field_location in_selector_field_location,
- choices in_choices) :
- type(in_alignment),
- selector_field_location{std::move(in_selector_field_location)},
- _choices
-{std::move(in_choices)}
-{
-}
-
-bool lst::variant_type::_is_equal(const type& base_other) const noexcept
-{
- const auto &other = static_cast<decltype(*this)&>(base_other);
-
- return this->selector_field_location == other.selector_field_location &&
- fields_are_equal(this->_choices
-, other._choices
-);
-}
-
-void lst::variant_type::accept(type_visitor& visitor) const
-{
- visitor.visit(*this);
-}