|
Arbiter
Dependency manager library that supports decentralization
|
Namespaces | |
| Exception | |
| Requirement | |
Classes | |
| class | Base |
| Base class for public-facing Arbiter types, such that they automatically get freeing, cloning, equality, and description functionality. More... | |
| struct | IteratorRange |
| Represents a pair of iterators bracketing the start and end of a range. More... | |
| class | MultipassIterator |
| Contains the state necessary to perform an algorithm over an iterator multiple times. More... | |
| struct | None |
| Sentinel value which can be used to create an empty Optional of any type. More... | |
| struct | Optional |
| Represents a value which may or may not exist. More... | |
| class | PermutationIterator |
| An iterator which generates every possible combination of the values of other iterators. More... | |
| class | SharedUserValue |
| Expresses shared ownership of an opaque user-provided value type, which was originally described in an ArbiterUserValue. More... | |
Typedefs | |
| template<typename It > | |
| using | IteratorResultVector = std::vector< typename std::iterator_traits< It >::value_type > |
| The result type of an iterator which yields dynamically-created vectors. More... | |
Functions | |
| std::string | copyAcquireCString (char *str) |
Returns a string which is a copy of str, which will then be freed. More... | |
| std::unique_ptr< char[]> | copyCString (const std::string &str) |
Returns a unique_ptr which wraps a NUL-terminated copy of the c_str() of the given string. More... | |
| template<typename T > | |
| size_t | hashOf (const T &value) |
| Hashes an arbitrary value that has an std::hash specialization. More... | |
| template<typename Collection > | |
| auto | makeIteratorRange (Collection &collection) |
| Creates an IteratorRange encompassing the entirety of the given collection. More... | |
| template<typename Collection > | |
| auto | makeIteratorRange (const Collection &collection) |
| Creates an IteratorRange encompassing the entirety of the given read-only collection. More... | |
| template<typename T > | |
| auto | makeOptional (T &&value) |
| Creates an Optional from a value, inferring its type. More... | |
| template<typename Map , typename Key , typename Value = typename Map::mapped_type> | |
| Optional< Value > | maybeAt (const Map &map, const Key &key) |
| Looks up a key in a map, returning the corresponding value if it exists. More... | |
| template<typename T > | |
| bool | operator== (const Optional< T > &lhs, const Optional< T > &rhs) |
| template<typename Swappable > | |
| void | reset (Swappable &value) |
| Resets a swappable value to its default constructor. More... | |
| std::shared_ptr< void > | shareUserContext (ArbiterUserContext context) |
| Converts an ArbiterUserContext into a shared pointer, automatically invoking its destructor when the last shared pointer is destructed. More... | |
| template<typename T > | |
| std::string | toString (const T &value) |
| Converts an arbitrary value into a string, using operator<<. More... | |
Variables | |
| std::unique_ptr< char[], decltype(&free)> | acquireCString (char *str) |
Returns a unique_ptr which takes ownership of str. More... | |
| struct Arbiter::None |
Sentinel value which can be used to create an empty Optional of any type.
Definition at line 18 of file Optional.h.
| using Arbiter::IteratorResultVector = typedef std::vector<typename std::iterator_traits<It>::value_type> |
The result type of an iterator which yields dynamically-created vectors.
Definition at line 113 of file Iterator.h.
| std::string Arbiter::copyAcquireCString | ( | char * | str | ) |
Returns a string which is a copy of str, which will then be freed.
| std::unique_ptr<char[]> Arbiter::copyCString | ( | const std::string & | str | ) |
Returns a unique_ptr which wraps a NUL-terminated copy of the c_str() of the given string.
| size_t Arbiter::hashOf | ( | const T & | value | ) |
| auto Arbiter::makeIteratorRange | ( | Collection & | collection | ) |
Creates an IteratorRange encompassing the entirety of the given collection.
Definition at line 34 of file Iterator.h.
| auto Arbiter::makeIteratorRange | ( | const Collection & | collection | ) |
Creates an IteratorRange encompassing the entirety of the given read-only collection.
Definition at line 45 of file Iterator.h.
| auto Arbiter::makeOptional | ( | T && | value | ) |
Creates an Optional from a value, inferring its type.
Definition at line 247 of file Optional.h.
| Optional<Value> Arbiter::maybeAt | ( | const Map & | map, |
| const Key & | key | ||
| ) |
Looks up a key in a map, returning the corresponding value if it exists.
Definition at line 18 of file Algorithm.h.
| bool Arbiter::operator== | ( | const Optional< T > & | lhs, |
| const Optional< T > & | rhs | ||
| ) |
Definition at line 234 of file Optional.h.
| void Arbiter::reset | ( | Swappable & | value | ) |
Resets a swappable value to its default constructor.
Definition at line 32 of file Algorithm.h.
| std::shared_ptr<void> Arbiter::shareUserContext | ( | ArbiterUserContext | context | ) |
Converts an ArbiterUserContext into a shared pointer, automatically invoking its destructor when the last shared pointer is destructed.
| std::string Arbiter::toString | ( | const T & | value | ) |
Converts an arbitrary value into a string, using operator<<.
Definition at line 18 of file ToString.h.
| std::unique_ptr<char[], decltype(&free)> Arbiter::acquireCString(char *str) |
Returns a unique_ptr which takes ownership of str.
Definition at line 34 of file ToString.h.
1.8.12