1 #ifndef EMPTY_NODE_VIEW_HPP
2 #define EMPTY_NODE_VIEW_HPP
4 #include "wordsearch_solver/compact_trie2/compact_trie2_iterator_typedefs.hpp"
18 constexpr
explicit EmptyNodeView_(Iterator it) : it_(it) { assert(*it == 0); }
21 constexpr
auto base()
const {
return it_; }
24 constexpr std::size_t
size()
const {
return 1; }
41 friend std::ostream& operator<<(std::ostream& os,
const EmptyNodeView_&) {
42 return os <<
"EmptyNode";
48 using EmptyNodeViewMut = EmptyNodeView_<DataIteratorMut>;
49 using EmptyNodeView = EmptyNodeView_<DataIterator>;
An empty node is simply a single std::uint8_t (byte) with value 0.
Definition: empty_node_view.hpp:15
constexpr std::size_t size() const
Definition: empty_node_view.hpp:24
constexpr bool is_only_end_of_word() const
Definition: empty_node_view.hpp:27
constexpr bool is_end_of_word() const
Definition: empty_node_view.hpp:39
constexpr auto base() const
Definition: empty_node_view.hpp:21
constexpr std::uint8_t data_size() const
Definition: empty_node_view.hpp:31
namespace compact_trie2
Definition: compact_trie2.hpp:19