|
template<class Key , class Value , template< class > class Alloc> |
using | honey::stdutil::unordered_map = std::unordered_map< Key, Value, std::hash< Key >, std::equal_to< Key >, Alloc< pair< const Key, Value >>> |
| std::unordered_map with custom allocator More...
|
|
template<class Key , class Value , template< class > class Alloc> |
using | honey::stdutil::unordered_multimap = std::unordered_multimap< Key, Value, std::hash< Key >, std::equal_to< Key >, Alloc< pair< const Key, Value >>> |
| std::unordered_multimap with custom allocator More...
|
|
template<class Key , template< class > class Alloc> |
using | honey::stdutil::unordered_set = std::unordered_set< Key, std::hash< Key >, std::equal_to< Key >, Alloc< Key >> |
| std::unordered_set with custom allocator More...
|
|
template<class Key , template< class > class Alloc> |
using | honey::stdutil::unordered_multiset = std::unordered_multiset< Key, std::hash< Key >, std::equal_to< Key >, Alloc< Key >> |
| std::unordered_multiset with custom allocator More...
|
|
|
template<class StdContainer > |
int | honey::size (const StdContainer &cont) |
| Safely get the size of a std container as a signed integer. More...
|
|
template<class Range > |
auto | honey::keys (Range &&range) -> Range_< TupleIter< mt_iterOf(range), 0 >, TupleIter< mt_iterOf(range), 0 >> |
| Create a range over the keys of a map or map iterator range. More...
|
|
template<class Range > |
auto | honey::values (Range &&range) -> Range_< TupleIter< mt_iterOf(range), 1 >, TupleIter< mt_iterOf(range), 1 >> |
| Create a range over the values of a map or map iterator range. More...
|
|
template<class Iter > |
auto | honey::stdutil::reverseIterToForward (Iter &&it) -> typename mt::removeRef< decltype(--it.base())>::type |
| Convert reverse iterator to forward iterator. More...
|
|
template<class List > |
List::reverse_iterator | honey::stdutil::erase (List &list, const typename List::reverse_iterator &iter) |
| Erase using reverse iterator. Returns reverse iterator to element after erased element. More...
|
|
template<class List > |
List::iterator | honey::stdutil::eraseVal (List &list, const typename List::value_type &val) |
| Erase first occurrence of value. Returns iterator to next element after the erased element, or end if not found. More...
|
|
template<class List , class T > |
void | honey::stdutil::eraseVals (List &list, const T &val) |
| Erase all occurrences of value. More...
|
|
template<class MultiMap , class Key , class Val > |
auto | honey::stdutil::findVal (MultiMap &map, const Key &key, const Val &val) -> mt_iterOf(map) |
| Get iterator to key with value. Returns end if not found. More...
|
|
template<class MultiSet , class Val > |
auto | honey::stdutil::findVal (MultiSet &set, const Val &val) -> mt_iterOf(set) |
| Get iterator to value. Returns end if not found. More...
|
|
template<class Func , class... Args> |
auto | honey::bind_fill (Func &&f, Args &&...args) -> decltype( priv::bind_fill< mt::funcTraits< typename mt::removeRef< Func >::type >::arity >()(forward< Func >(f), forward< Args >(args)...)) |
| Version of bind that automatically fills in placeholders for unspecified arguments. More...
|
|
template<class Func , class... Args> |
auto | honey::manipFunc (Func &&f, Args &&...args) |
| Helper to create a manipulator that takes arguments. eg. A manip named 'foo': auto foo(int val) { return manipFunc([=](ios_base& ios) { FooManip::inst(ios).val = val; }); } More...
|
|