45template <
typename file_type>
48 static_assert(!std::is_const_v<file_type>,
49 "You cannot iterate over const files, because the iterator changes the file.");
120 template <
typename arg_t>
123 assert(
host !=
nullptr);
124 host->push_back(std::forward<arg_t>(arg));
135 constexpr bool operator==(std::default_sentinel_t
const &)
const noexcept
141 constexpr bool operator!=(std::default_sentinel_t
const &)
const noexcept
149 return (it == std::default_sentinel);
155 return (it != std::default_sentinel);
Output iterator necessary for providing a range-like interface in output file.
Definition: out_file_iterator.hpp:47
~out_file_iterator()=default
Use default deconstructor.
constexpr out_file_iterator & operator=(out_file_iterator const &)=default
Copy construction via assignment.
out_file_iterator operator++(int)
This is a no-op, returns copy of self. In contrast to input iterators, the return type is required.
Definition: out_file_iterator.hpp:104
out_file_iterator & operator++()
This is a no-op, returns reference to self.
Definition: out_file_iterator.hpp:98
constexpr friend bool operator!=(std::default_sentinel_t const &, out_file_iterator const &it) noexcept
Checks whether it is not equal to the sentinel.
Definition: out_file_iterator.hpp:153
constexpr friend bool operator==(std::default_sentinel_t const &, out_file_iterator const &it) noexcept
Checks whether it is equal to the sentinel.
Definition: out_file_iterator.hpp:147
constexpr out_file_iterator(out_file_iterator const &)=default
Copy constructor.
out_file_iterator & operator=(arg_t &&arg)
Insert the given value into the file, via the file's push_back() member.
Definition: out_file_iterator.hpp:121
constexpr out_file_iterator()=default
Default constructor.
constexpr out_file_iterator & operator=(out_file_iterator &&)=default
Move assignment.
void size_type
The size type (void).
Definition: out_file_iterator.hpp:64
void * pointer
The pointer type.
Definition: out_file_iterator.hpp:68
file_type * host
Pointer to file host.
Definition: out_file_iterator.hpp:161
constexpr out_file_iterator(out_file_iterator &&)=default
Move constructor.
out_file_iterator & operator*() noexcept
Return reference to self.
Definition: out_file_iterator.hpp:111
constexpr out_file_iterator(file_type &_host) noexcept
Construct with reference to host.
Definition: out_file_iterator.hpp:90
constexpr bool operator!=(std::default_sentinel_t const &) const noexcept
Checks whether *this is not equal to the sentinel (always true).
Definition: out_file_iterator.hpp:141
void reference
The reference type (void).
Definition: out_file_iterator.hpp:60
void value_type
The value type (void).
Definition: out_file_iterator.hpp:58
constexpr bool operator==(std::default_sentinel_t const &) const noexcept
Checks whether *this is equal to the sentinel (always false).
Definition: out_file_iterator.hpp:135
void const_reference
The const reference type (void).
Definition: out_file_iterator.hpp:62
The internal SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
The <ranges> header from C++20's standard library.