Template Class SparseTrie

Class Documentation

template<typename A, typename T>
class SparseTrie

Public Types

typedef SparseTrie<A, T> child_type
typedef std::unordered_map<A, child_type*> child_container

Public Functions

inline SparseTrie(const SparseTrie &t)
inline SparseTrie(SparseTrie &&t)
inline SparseTrie(T v)
inline SparseTrie()
inline ~SparseTrie()
inline SparseTrie &operator=(const SparseTrie &t)
inline SparseTrie &operator=(SparseTrie &&t)
template<typename ITT>
inline void insert(ITT stptr, const ITT endptr, const T &v)
inline void emplace(const std::vector<A> &k, T &&v)
inline void emplace(const std::vector<A> &k, const T &v)
template<typename ITT>
inline T &get(ITT stptr, const ITT endptr)
inline T &operator[](const std::vector<T> &k)
template<typename ITT>
inline T get(ITT stptr, const ITT endptr, const T &def_ret)
inline T get(const std::vector<T> &k, const T &def_ret)
template<typename ITT>
inline T get(ITT stptr, const ITT endptr, const T &def_ret) const
inline T get(const std::vector<T> &k, const T &def_ret) const
template<typename ITT>
inline size_t count(ITT stptr, const ITT endptr)
inline size_t count(const std::vector<T> &k)

Public Members

T val
child_container *children = nullptr