paludis  Version 2.6.0
List of all members
paludis::RepositoryNameCache Class Reference

#include <repository_name_cache.hh>

Basic operations

 RepositoryNameCache (const FSPath &location, const Repository *const repo)
 
virtual ~RepositoryNameCache ()
 

Cache helper functions

std::shared_ptr< const CategoryNamePartSetcategory_names_containing_package (const PackageNamePart &p) const
 
bool usable () const noexcept
 
void regenerate_cache () const
 
void add (const QualifiedPackageName &)
 
void remove (const QualifiedPackageName &)
 

Detailed Description

Used by various Repository subclasses to implement a names cache.

See also
Repository

Member Function Documentation

void paludis::RepositoryNameCache::add ( const QualifiedPackageName )

Add a new package to the cache.

std::shared_ptr<const CategoryNamePartSet> paludis::RepositoryNameCache::category_names_containing_package ( const PackageNamePart p) const

Implement category_names_containing_package.

May return a zero pointer, in which case the repository should fall back to Repository::do_category_names_containing_package or its own implementation.

void paludis::RepositoryNameCache::regenerate_cache ( ) const

Implement cache regeneration.

void paludis::RepositoryNameCache::remove ( const QualifiedPackageName )

Remove a package from the cache.

bool paludis::RepositoryNameCache::usable ( ) const
noexcept

Whether or not our cache is usable.

Initially this will be true. After the first query the value may change to false (the query will return a zero pointer too).


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