paludis::DepList Class Reference
[Dependency Resolution]

#include <dep_list.hh>

Inheritance diagram for paludis::DepList:

paludis::PrivateImplementationPattern< C_ >

List of all members.

Iterate over our dependency list entries.

typedef WrappedForwardIterator
< IteratorTag, DepListEntry
Iterator
typedef WrappedForwardIterator
< ConstIteratorTag, const
DepListEntry
ConstIterator
Iterator begin ()
Iterator end ()
ConstIterator begin () const
ConstIterator end () const

Basic operations

 DepList (const Environment *const, const DepListOptions &)
virtual ~DepList ()

Public Member Functions

std::tr1::shared_ptr
< DepListOptions
options ()
const std::tr1::shared_ptr
< const DepListOptions
options () const
void add (const SetSpecTree &, const std::tr1::shared_ptr< const DestinationsSet > &target_destinations)
void add (const PackageDepSpec &, const std::tr1::shared_ptr< const DestinationsSet > &target_destinations)
Iterator push_back (const DepListEntry &)
void clear ()
bool already_installed (const DependencySpecTree::BasicNode &, const std::tr1::shared_ptr< const DestinationsSet > &target_destinations) const
bool replaced (const PackageID &) const
bool match_on_list (const PackageDepSpec &) const
bool has_errors () const
void add_suggested_package (const std::tr1::shared_ptr< const PackageID > &, const PackageDepSpec &, const std::tr1::shared_ptr< const DestinationsSet > &destinations)

Protected Member Functions

std::tr1::shared_ptr< Repositoryfind_destination (const PackageID &, const std::tr1::shared_ptr< const DestinationsSet > &)
void add_in_role (const bool only_if_not_suggested_label, const DependencySpecTree::BasicNode &, const std::string &role, const std::tr1::shared_ptr< const DestinationsSet > &)
bool prefer_installed_over_uninstalled (const PackageID &, const PackageID &)
void add_package (const std::tr1::shared_ptr< const PackageID > &, const std::tr1::shared_ptr< const DepTag > &, const PackageDepSpec &, const std::tr1::shared_ptr< const DestinationsSet > &destinations)
void add_already_installed_package (const std::tr1::shared_ptr< const PackageID > &, const std::tr1::shared_ptr< const DepTag > &, const PackageDepSpec &, const std::tr1::shared_ptr< const DestinationsSet > &destinations)
void add_error_package (const std::tr1::shared_ptr< const PackageID > &, const DepListEntryKind, const PackageDepSpec &)
void add_predeps (const DependencySpecTree::BasicNode &, const DepListDepsOption, const std::string &, const std::tr1::shared_ptr< const DestinationsSet > &destinations, const bool only_if_not_suggested_label)
void add_postdeps (const DependencySpecTree::BasicNode &, const DepListDepsOption, const std::string &, const std::tr1::shared_ptr< const DestinationsSet > &destinations, const bool only_if_not_suggested_label)
bool is_top_level_target (const PackageID &) const
void add_not_top_level (const bool only_if_not_suggested_label, const DependencySpecTree::BasicNode &, const std::tr1::shared_ptr< const DestinationsSet > &target_destinations)

Friends

class AddVisitor


Detailed Description

Holds a list of dependencies in merge order.

Member Function Documentation

std::tr1::shared_ptr<Repository> paludis::DepList::find_destination ( const PackageID ,
const std::tr1::shared_ptr< const DestinationsSet > &   
) [protected]

Find an appropriate destination for a package.

void paludis::DepList::add_in_role ( const bool  only_if_not_suggested_label,
const DependencySpecTree::BasicNode &  ,
const std::string &  role,
const std::tr1::shared_ptr< const DestinationsSet > &   
) [protected]

Add a DepSpec with role context.

bool paludis::DepList::prefer_installed_over_uninstalled ( const PackageID ,
const PackageID  
) [protected]

Return whether we prefer the first parameter, which is installed, over the second, which isn't.

void paludis::DepList::add_package ( const std::tr1::shared_ptr< const PackageID > &  ,
const std::tr1::shared_ptr< const DepTag > &  ,
const PackageDepSpec ,
const std::tr1::shared_ptr< const DestinationsSet > &  destinations 
) [protected]

Add a package to the list.

void paludis::DepList::add_already_installed_package ( const std::tr1::shared_ptr< const PackageID > &  ,
const std::tr1::shared_ptr< const DepTag > &  ,
const PackageDepSpec ,
const std::tr1::shared_ptr< const DestinationsSet > &  destinations 
) [protected]

Add an already installed package to the list.

void paludis::DepList::add_error_package ( const std::tr1::shared_ptr< const PackageID > &  ,
const   DepListEntryKind,
const PackageDepSpec  
) [protected]

Add an error package to the list.

void paludis::DepList::add_predeps ( const DependencySpecTree::BasicNode &  ,
const   DepListDepsOption,
const std::string &  ,
const std::tr1::shared_ptr< const DestinationsSet > &  destinations,
const bool  only_if_not_suggested_label 
) [protected]

Add predependencies.

void paludis::DepList::add_postdeps ( const DependencySpecTree::BasicNode &  ,
const   DepListDepsOption,
const std::string &  ,
const std::tr1::shared_ptr< const DestinationsSet > &  destinations,
const bool  only_if_not_suggested_label 
) [protected]

Add postdependencies.

bool paludis::DepList::is_top_level_target ( const PackageID  )  const [protected]

Return whether the specified PackageID is matched by the top level target.

std::tr1::shared_ptr<DepListOptions> paludis::DepList::options (  ) 

Our options.

const std::tr1::shared_ptr<const DepListOptions> paludis::DepList::options (  )  const

Our options.

void paludis::DepList::add ( const SetSpecTree &  ,
const std::tr1::shared_ptr< const DestinationsSet > &  target_destinations 
)

Add the packages required to resolve an additional dependency spec.

void paludis::DepList::add ( const PackageDepSpec ,
const std::tr1::shared_ptr< const DestinationsSet > &  target_destinations 
)

Add the packages required to resolve an additional dependency spec.

Iterator paludis::DepList::push_back ( const DepListEntry  ) 

Manually add a DepListEntry to the list.

Does not work well with ordered resolution, and does not do much sanity checking. This is used by InstallTask to implement resume commands and the exec command.

void paludis::DepList::clear (  ) 

Clear the list.

bool paludis::DepList::already_installed ( const DependencySpecTree::BasicNode &  ,
const std::tr1::shared_ptr< const DestinationsSet > &  target_destinations 
) const

Return whether a spec structure is already installed.

bool paludis::DepList::replaced ( const PackageID  )  const

Return whether a PackageID has been replaced.

bool paludis::DepList::match_on_list ( const PackageDepSpec  )  const

Return whether a spec matches an item in the list.

bool paludis::DepList::has_errors (  )  const

Whether we have any errors.

void paludis::DepList::add_suggested_package ( const std::tr1::shared_ptr< const PackageID > &  ,
const PackageDepSpec ,
const std::tr1::shared_ptr< const DestinationsSet > &  destinations 
)

Add a suggested package to the list.


The documentation for this class was generated from the following file:
Generated on Mon Sep 21 10:36:09 2009 for paludis by  doxygen 1.5.4