Arbiter
Dependency manager library that supports decentralization
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 CArbiter::BaseBase class for public-facing Arbiter types, such that they automatically get freeing, cloning, equality, and description functionality
 CArbiterDependencyRepresents a dependency specification, which consists of a project identifier and a version requirement
 CArbiterDependencyListRepresents a list of dependencies
 CArbiterProjectIdentifierAn opaque value which identifies a project participating in dependency resolution
 CArbiterRequirementRepresents a requirement for a specific version or set of versions
 CArbiter::Requirement::AnyA requirement satisfied by any version
 CArbiter::Requirement::AtLeastA requirement satisfied only by versions greater than or equal to the specified one
 CArbiter::Requirement::CompatibleWithA requirement satisfied only by versions which are "compatible with" the specified one, as defined by SemVer
 CArbiter::Requirement::Compound
 CArbiter::Requirement::Custom
 CArbiter::Requirement::ExactlyA requirement satisfied only by one particular semantic version
 CArbiter::Requirement::Prioritized
 CArbiter::Requirement::Unversioned
 CArbiterResolvedDependencyRepresents a dependency which has been resolved to a specific version
 CArbiterResolvedDependencyGraphRepresents a fully consistent, resolved dependency graph, preserving relationships between dependencies
 CArbiterResolvedDependencyInstallerEnumerates a resolved dependency graph in "install order," where all projects listed within one phase may be safely installed in parallel with respect to each another, and the projects within each successive phase must be installed only after the projects in all previous phases have been completely installed
 CArbiterResolverA dependency resolver which contains context about how to evaluate the dependency graph
 CArbiterSelectedVersionRepresents a "selected" version, which is a concrete choice of a real project version
 CArbiterSelectedVersionListRepresents a list of selected versions
 CArbiterSemanticVersionRepresents a semantic version, as defined by semver.org
 CArbiter::IteratorRange< It >Represents a pair of iterators bracketing the start and end of a range
 CArbiter::MultipassIterator< It >Contains the state necessary to perform an algorithm over an iterator multiple times
 CArbiter::NoneSentinel value which can be used to create an empty Optional of any type
 CArbiter::Optional< T >Represents a value which may or may not exist
 CArbiter::Requirement::VisitorBase class for objects that want to visit requirements
 CArbiter::SharedUserValue< Owner >Expresses shared ownership of an opaque user-provided value type, which was originally described in an ArbiterUserValue
 CArbiterResolvedDependencyGraph::NodeValue
 CArbiterResolverBehaviorsUser-provided behaviors for how dependency resolution should work
 CArbiterUserContextRepresents opaque data that can be passed to Arbiter data types and functionality, then later retrieved
 CArbiterUserValueRepresents an arbitrary value type that can be associated with Arbiter data types and functionality
 CArbiter::Optional< ArbiterSemanticVersion >
 CArbiter::Optional< std::string >
 CArbiter::SharedUserValue< ArbiterProjectIdentifier >
 CArbiter::SharedUserValue< ArbiterSelectedVersion >
 Cstd::exceptionSTL class
 Cstd::runtime_errorSTL class
 CArbiter::Exception::BaseBase type for Arbiter exceptions
 CArbiter::Exception::MutuallyExclusiveConstraintsException type indicating that there were mutually exclusive constraints in a proposed dependency graph
 CArbiter::Exception::UnsatisfiableConstraintsException type indicating that there were unsatisfiable constraints for the selected versions in a proposed dependency graph
 CArbiter::Exception::UserErrorException type representing an error that was returned from Arbiter client code
 Cstd::hash< Arbiter::Optional< T > >
 Cstd::hash< Arbiter::SharedUserValue< Owner > >
 Cstd::hash< ArbiterDependency >
 Cstd::hash< ArbiterProjectIdentifier >
 Cstd::hash< ArbiterRequirement >
 Cstd::hash< ArbiterResolvedDependency >
 Cstd::hash< ArbiterSelectedVersion >
 Cstd::hash< ArbiterSemanticVersion >
 Citerator
 CArbiter::PermutationIterator< It >An iterator which generates every possible combination of the values of other iterators