|
OpenEnroth 39d87c6
|
#include <FileSystemTrie.h>
Public Member Functions | |
| FileSystemTrieNode (FileSystemTrieNode *parent, std::string_view key) | |
| bool | hasValue () const |
| T & | value () |
| const T & | value () const |
| const auto & | children () const |
| FileSystemTrieNode * | child (std::string_view name) const |
| FileSystemTrieNode * | parent () const |
Private Attributes | |
| FileSystemTrieNode * | _parent = nullptr |
| std::string | _key |
| std::optional< T > | _value |
| std::unordered_map< TransparentString, std::unique_ptr< FileSystemTrieNode >, TransparentStringHash, TransparentStringEquals > | _children |
Friends | |
| class | FileSystemTrie< T > |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
|
private |
Children map. It's possible to jump through hoops here and use std::unordered_set of std::unique_ptr<FileSystemTrieNode> since the key is stored in the FileSystemTrieNode anyway. But it's just not worth it.
|
private |
Key in the parent node. It's only used for node removal, and is not exposed through getters.
|
private |
Parent of this node.
|
private |
Value, if any.