SeqAn3  3.0.2
The Modern C++ library for sequence analysis.
seqan3::sequence_end_gap_specifier_base< value_t, _is_static, _value > Struct Template Reference

A mixin class which can maintain a static or a dynamic bool state. More...

#include <seqan3/alignment/configuration/align_config_aligned_ends.hpp>

+ Inheritance diagram for seqan3::sequence_end_gap_specifier_base< value_t, _is_static, _value >:

Public Member Functions

constexpr bool operator() () const noexcept
 Returns the wrapped value.

Public Attributes

value_t value {}
 The wrapped value.

Static Protected Attributes

static constexpr bool is_static = _is_static
 Used to differentiate between static and dynamic state.
static constexpr bool static_value = _value
 Holds the static value if the state is static.


template<typename ... ends_t>
class end_gaps
 Friend of this class to provide access to static constexpr members.

Detailed Description

template<typename value_t, bool _is_static = std::conditional_t<std::is_same_v<value_t, bool>, std::false_type, std::true_type>::value, bool _value = std::conditional_t<_is_static, value_t, std::false_type>::value>
struct seqan3::sequence_end_gap_specifier_base< value_t, _is_static, _value >

A mixin class which can maintain a static or a dynamic bool state.

Template Parameters
value_tThe value type to be represented. Must be of type std::true_type, std::false_type or bool.
_is_staticA boolean that evaluates to true only if value_t is a std::integral_constant.
_valueA boolean that captures the value of value_t, iff _is_static is true. Otherwise false.

This mixin base class provides an optional pattern regarding the static state of the represented value. If the mixin is constructed from an std::integral_constant, it will hold an static state of the wrapped value. In the other case, when constructing it from a boolean, the state of the value will be dynamic.

The documentation for this struct was generated from the following file: