paludis Version 3.0.2
The one true package mangler
paludis::PackageDepSpec Class Reference

#include <dep_spec.hh>

Inheritance diagram for paludis::PackageDepSpec:

Public Member Functions

std::shared_ptr< const QualifiedPackageName > package_ptr () const
std::shared_ptr< const PackageNamePart > package_name_part_ptr () const
std::shared_ptr< const CategoryNamePart > category_name_part_ptr () const
std::shared_ptr< const VersionRequirements > version_requirements_ptr () const
VersionRequirementsMode version_requirements_mode () const
std::shared_ptr< const SlotRequirement > slot_requirement_ptr () const
std::shared_ptr< const RepositoryName > in_repository_ptr () const
std::shared_ptr< const InstallableToRepository > installable_to_repository_ptr () const
std::shared_ptr< const RepositoryName > from_repository_ptr () const
std::shared_ptr< const FSPath > installed_at_path_ptr () const
std::shared_ptr< const InstallableToPath > installable_to_path_ptr () const
std::shared_ptr< const AdditionalPackageDepSpecRequirements > additional_requirements_ptr () const
std::shared_ptr< const PackageDepSpecData > data () const
Public Member Functions inherited from paludis::StringDepSpec
std::string text () const
Public Member Functions inherited from paludis::DepSpec
virtual const std::shared_ptr< const DepSpecAnnotations > maybe_annotations () const PALUDIS_ATTRIBUTE((warn_unused_result))
virtual void set_annotations (const std::shared_ptr< const DepSpecAnnotations > &)
 DepSpec (const DepSpec &)=delete
DepSpec & operator= (const DepSpec &)=delete
Public Member Functions inherited from paludis::CloneUsingThis< DepSpec, PackageDepSpec >
std::shared_ptr< DepSpec > clone () const override PALUDIS_ATTRIBUTE((warn_unused_result))

Friends

std::ostream & operator<< (std::ostream &, const PackageDepSpec &)

Basic operations

 PackageDepSpec (const std::shared_ptr< const PackageDepSpecData > &)
 PackageDepSpec (const PackageDepSpec &)

Additional Inherited Members

Protected Member Functions inherited from paludis::StringDepSpec
void set_text (const std::string &)
 StringDepSpec (const std::string &)

Detailed Description

A PackageDepSpec represents a package name (for example, 'app-editors/vim'), possibly with associated version and SLOT restrictions.

A PackageDepSpec is implemented in terms of PackageDepSpecData. Individual repositories provide their own way of creating PackageDepSpec::Data that handle the native syntax for those repositories (e.g. CRAN uses "Blah (>= 1.23)" whilst E uses ">=cat/blah-1.23").

To create a PackageDepSpec from user input, use parse_user_package_dep_spec(), and for programmer input, use make_package_dep_spec().

Examples
example_dep_spec.cc.

Constructor & Destructor Documentation

◆ PackageDepSpec()

paludis::PackageDepSpec::PackageDepSpec ( const std::shared_ptr< const PackageDepSpecData > & )

Constructor.

Clients will usually use either parse_user_package_dep_spec() or make_package_dep_spec() rather than calling this method directly. Repositories will define their own way of creating a PackageDepSpec.

Since
0.26

References PackageDepSpec().

Referenced by operator<<, and PackageDepSpec().

Member Function Documentation

◆ additional_requirements_ptr()

std::shared_ptr< const AdditionalPackageDepSpecRequirements > paludis::PackageDepSpec::additional_requirements_ptr ( ) const

Fetch any additional requirements (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ category_name_part_ptr()

std::shared_ptr< const CategoryNamePart > paludis::PackageDepSpec::category_name_part_ptr ( ) const

Fetch the category name part, if wildcarded, or a zero pointer otherwise.

Examples
example_dep_spec.cc.

◆ data()

std::shared_ptr< const PackageDepSpecData > paludis::PackageDepSpec::data ( ) const

Access to our data.

◆ from_repository_ptr()

std::shared_ptr< const RepositoryName > paludis::PackageDepSpec::from_repository_ptr ( ) const

Fetch the from-repository requirement (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ in_repository_ptr()

std::shared_ptr< const RepositoryName > paludis::PackageDepSpec::in_repository_ptr ( ) const

Fetch the in-repository requirement (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ installable_to_path_ptr()

std::shared_ptr< const InstallableToPath > paludis::PackageDepSpec::installable_to_path_ptr ( ) const

Fetch the installable-to-path requirement (may be a zero pointer).

Since
0.32
Examples
example_dep_spec.cc.

◆ installable_to_repository_ptr()

std::shared_ptr< const InstallableToRepository > paludis::PackageDepSpec::installable_to_repository_ptr ( ) const

Fetch the installable-to-repository requirement (may be a zero pointer).

Since
0.32
Examples
example_dep_spec.cc.

◆ installed_at_path_ptr()

std::shared_ptr< const FSPath > paludis::PackageDepSpec::installed_at_path_ptr ( ) const

Fetch the installed-at-path requirement (may be a zero pointer).

Since
0.32
Examples
example_dep_spec.cc.

◆ package_name_part_ptr()

std::shared_ptr< const PackageNamePart > paludis::PackageDepSpec::package_name_part_ptr ( ) const

Fetch the package name part, if wildcarded, or a zero pointer otherwise.

Examples
example_dep_spec.cc.

◆ package_ptr()

std::shared_ptr< const QualifiedPackageName > paludis::PackageDepSpec::package_ptr ( ) const

Fetch the package name (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ slot_requirement_ptr()

std::shared_ptr< const SlotRequirement > paludis::PackageDepSpec::slot_requirement_ptr ( ) const

Fetch the slot requirement (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ version_requirements_mode()

VersionRequirementsMode paludis::PackageDepSpec::version_requirements_mode ( ) const

Fetch the version requirements mode.

Examples
example_dep_spec.cc.

◆ version_requirements_ptr()

std::shared_ptr< const VersionRequirements > paludis::PackageDepSpec::version_requirements_ptr ( ) const

Fetch the version requirements (may be a zero pointer).

Examples
example_dep_spec.cc.

◆ operator<<

std::ostream & operator<< ( std::ostream & ,
const PackageDepSpec &  )
friend

A PackageDepSpec can be written to an ostream.

References PackageDepSpec().


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