Cupt
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator
Classes | Public Types | Public Member Functions
cupt::system::Resolver Class Reference

dependency problems resolver More...

#include <cupt/system/resolver.hpp>

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

List of all members.

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
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.

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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator