halcheck 1.0
Loading...
Searching...
No Matches

◆ trie() [3/3]

template<typename K , typename V , typename Hash = std::hash<K>>
template<typename R >
halcheck::lib::trie< K, V, Hash >::trie ( V value,
R && range )
inlineexplicit

Constructs a trie with a given value and set of children.

Parameters
valueThe value to assign to the root node.
rangeThe set of children.
Postcondition
*trie(x, xs) == x
trie(x, xs).drop(k) == y where {k, y} is in xs
trie(x, xs).drop({k, ...ks}) == y.drop({...ks}) where {k, y} is in xs