|
SeqAn3 3.4.2-rc.1
The Modern C++ library for sequence analysis.
|
A helper that enables an input view to temporarily cache values as it is iterated over. More...
#include <seqan3/utility/views/detail/non_propagating_cache.hpp>
Inheritance diagram for seqan3::detail::non_propagating_cache< T >:Public Member Functions | |
|
template<class I > requires requires (I const & i) { T(*i); } | |
| constexpr T & | emplace_deref (I const &i) |
Destroys current value, initializes with new value obtained from dereferencing i, and returns value. | |
| constexpr | non_propagating_cache (non_propagating_cache &&other) noexcept |
Move constructor is a no-op for this and destroys value of other. | |
| constexpr | non_propagating_cache (non_propagating_cache const &) noexcept |
| Copy construction is a no-op. | |
| constexpr non_propagating_cache & | operator= (non_propagating_cache &&other) noexcept |
Move assignment destroys values of both this and other. | |
| constexpr non_propagating_cache & | operator= (non_propagating_cache const &other) noexcept |
Copy assignment is a no-op if this == other, otherwise destroys value of this. | |
Public Member Functions inherited from std::optional< T > | |
| T | emplace (T... args) |
| T | has_value (T... args) |
| T | operator bool (T... args) |
| T | operator* (T... args) |
| T | operator-> (T... args) |
| T | operator= (T... args) |
| T | optional (T... args) |
| T | reset (T... args) |
| T | swap (T... args) |
| T | value (T... args) |
| T | value_or (T... args) |
| T | ~optional (T... args) |
A helper that enables an input view to temporarily cache values as it is iterated over.
Behaves like std::optional, but
T with std::is_object_v<T>.this and destroys value of other.this == other, otherwise destroys value of this.emplace_deref member function.