Cupt
Classes | Public Types | Public Member Functions | List of all members
cupt::system::Resolver Class Referenceabstract

dependency problems resolver More...

#include <cupt/system/resolver.hpp>

Inheritance diagram for cupt::system::Resolver:
cupt::system::NativeResolver

Classes

struct  AutoRemovalReason
 reason: auto-removal More...
 
struct  Offer
 the result of resolver's work More...
 
struct  Reason
 base class for resolver decision reasons More...
 
struct  RelationExpressionReason
 reason: other version's dependency More...
 
struct  SuggestedPackage
 resolver's main solution item More...
 
struct  SynchronizationReason
 reason: source-synchronized with a related binary package More...
 
struct  UserAnswer
 user callback answer variants More...
 
struct  UserReason
 reason: asked by user More...
 

Public Types

typedef map< string,
SuggestedPackage
SuggestedPackages
 
typedef std::function
< UserAnswer::Type(const Offer &) > 
CallbackType
 callback function type
 

Public Member Functions

virtual void installVersion (const shared_ptr< const BinaryVersion > &)=0
 
virtual void satisfyRelationExpression (const RelationExpression &)=0
 
virtual void unsatisfyRelationExpression (const RelationExpression &)=0
 
virtual void removePackage (const string &packageName)=0
 
virtual void upgrade ()=0
 
virtual bool resolve (CallbackType)=0
 perform a resolve computations More...
 
virtual ~Resolver ()
 destructor
 

Detailed Description

dependency problems resolver

This class provides the dependency problems resolver interface for system state modifications.

First, you call class methods to specify how would you want to modify the system, and then you finally call resolve to get a consistent package set(s) for specified modifications.

Member Typedef Documentation

suggested set of packages

Member Function Documentation

virtual void cupt::system::Resolver::installVersion ( const shared_ptr< const BinaryVersion > &  )
pure virtual

Requests installation of the specific version.

Implemented in cupt::system::NativeResolver.

virtual void cupt::system::Resolver::removePackage ( const string &  packageName)
pure virtual

Requests that specified package is removed.

Parameters
packageName

Implemented in cupt::system::NativeResolver.

virtual bool cupt::system::Resolver::resolve ( CallbackType  )
pure virtual

perform a resolve computations

Takes all requested data and tries to find the best valid set of packages which conforms to what was requested.

Returns
true if the solution was found and accepted by user, false otherwise

Implemented in cupt::system::NativeResolver.

virtual void cupt::system::Resolver::satisfyRelationExpression ( const RelationExpression )
pure virtual

Requests that specified relation expression is satisfied.

Implemented in cupt::system::NativeResolver.

virtual void cupt::system::Resolver::unsatisfyRelationExpression ( const RelationExpression )
pure virtual

Requests that specified relation expression is not satisfied.

Implemented in cupt::system::NativeResolver.

virtual void cupt::system::Resolver::upgrade ( )
pure virtual

Requests an upgrade of all installed packages (to their policy version).

Implemented in cupt::system::NativeResolver.


The documentation for this class was generated from the following file: