Files | |
file | dep_label-fwd.hh |
file | dep_label.hh |
file | dep_list_exceptions.hh |
file | dep_list_options.hh |
file | dep_spec-fwd.hh |
file | dep_spec.hh |
file | dep_spec_flattener.hh |
file | dep_tag-fwd.hh |
file | dep_tag.hh |
file | distribution-fwd.hh |
file | version_requirements-fwd.hh |
file | version_requirements.hh |
file | example_dep_label.cc |
file | example_dep_spec.cc |
file | example_dep_spec_flattener.cc |
file | example_dep_tag.cc |
Classes | |
class | paludis::URILabel |
class | paludis::ConcreteURILabel< T_ > |
class | paludis::DependencyLabel |
struct | paludis::DependencySystemLabel |
struct | paludis::DependencyTypeLabel |
struct | paludis::DependencySuggestLabel |
struct | paludis::DependencyABIsLabel |
class | paludis::ConcreteDependencyLabel< T_, C_ > |
class | paludis::ActiveDependencyLabels |
class | paludis::DepSpec |
class | paludis::AnyDepSpec |
class | paludis::AllDepSpec |
class | paludis::ConditionalDepSpec |
class | paludis::ConditionalDepSpecData |
class | paludis::StringDepSpec |
class | paludis::AdditionalPackageDepSpecRequirement |
struct | paludis::InstallableToRepository |
struct | paludis::InstallableToPath |
class | paludis::PartiallyMadePackageDepSpec |
class | paludis::PackageDepSpec |
class | paludis::PackageDepSpecData |
class | paludis::PlainTextDepSpec |
class | paludis::NamedSetDepSpec |
class | paludis::LicenseDepSpec |
class | paludis::FetchableURIDepSpec |
class | paludis::SimpleURIDepSpec |
class | paludis::PackageDepSpecError |
class | paludis::BlockDepSpec |
class | paludis::LabelsDepSpec< Labels_ > |
class | paludis::DepSpecFlattener< Heirarchy_, Item_ > |
class | paludis::DepTagCategory |
class | paludis::DepTagCategoryFactory |
class | paludis::DepTag |
class | paludis::GLSADepTag |
class | paludis::GeneralSetDepTag |
class | paludis::DependencyDepTag |
class | paludis::TargetDepTag |
struct | paludis::PackageDepSpecProperties |
class | paludis::GotASetNotAPackageDepSpec |
class | paludis::UserKeyRequirement |
struct | paludis::VersionRequirement |
Typedefs | |
typedef Sequence < std::tr1::shared_ptr< const DependencyLabel > > | paludis::DependencyLabelSequence |
typedef Sequence < std::tr1::shared_ptr< const DependencySystemLabel > > | paludis::DependencySystemLabelSequence |
typedef Sequence < std::tr1::shared_ptr< const DependencyTypeLabel > > | paludis::DependencyTypeLabelSequence |
typedef Sequence < std::tr1::shared_ptr< const DependencySuggestLabel > > | paludis::DependencySuggestLabelSequence |
typedef Sequence < std::tr1::shared_ptr< const DependencyABIsLabel > > | paludis::DependencyABIsLabelSequence |
typedef ConcreteDependencyLabel < DependencyHostLabelTag, DependencySystemLabel > | paludis::DependencyHostLabel |
typedef ConcreteDependencyLabel < DependencyTargetLabelTag, DependencySystemLabel > | paludis::DependencyTargetLabel |
typedef ConcreteDependencyLabel < DependencyBuildLabelTag, DependencyTypeLabel > | paludis::DependencyBuildLabel |
typedef ConcreteDependencyLabel < DependencyRunLabelTag, DependencyTypeLabel > | paludis::DependencyRunLabel |
typedef ConcreteDependencyLabel < DependencyPostLabelTag, DependencyTypeLabel > | paludis::DependencyPostLabel |
typedef ConcreteDependencyLabel < DependencyInstallLabelTag, DependencyTypeLabel > | paludis::DependencyInstallLabel |
typedef ConcreteDependencyLabel < DependencyCompileLabelTag, DependencyTypeLabel > | paludis::DependencyCompileLabel |
typedef ConcreteDependencyLabel < DependencySuggestedLabelTag, DependencySuggestLabel > | paludis::DependencySuggestedLabel |
typedef ConcreteDependencyLabel < DependencyRecommendedLabelTag, DependencySuggestLabel > | paludis::DependencyRecommendedLabel |
typedef ConcreteDependencyLabel < DependencyRequiredLabelTag, DependencySuggestLabel > | paludis::DependencyRequiredLabel |
typedef ConcreteDependencyLabel < DependencyAnyLabelTag, DependencyABIsLabel > | paludis::DependencyAnyLabel |
typedef ConcreteDependencyLabel < DependencyMineLabelTag, DependencyABIsLabel > | paludis::DependencyMineLabel |
typedef ConcreteDependencyLabel < DependencyPrimaryLabelTag, DependencyABIsLabel > | paludis::DependencyPrimaryLabel |
typedef ConcreteDependencyLabel < DependencyABILabelTag, DependencyABIsLabel > | paludis::DependencyABILabel |
typedef Options < PartiallyMadePackageDepSpecOption > | paludis::PartiallyMadePackageDepSpecOptions |
typedef LabelsDepSpec< URILabel > | paludis::URILabelsDepSpec |
typedef LabelsDepSpec < DependencyLabel > | paludis::DependencyLabelsDepSpec |
typedef Sequence < std::tr1::shared_ptr< const AdditionalPackageDepSpecRequirement > > | paludis::AdditionalPackageDepSpecRequirements |
typedef Set< DepTagEntry, DepTagEntryComparator > | paludis::DepListEntryTags |
typedef Options < UserPackageDepSpecOption > | paludis::UserPackageDepSpecOptions |
typedef Sequence < VersionRequirement > | paludis::VersionRequirements |
Enumerations | |
enum | paludis::PartiallyMadePackageDepSpecOption { paludis::pmpdso_always_use_ranged_deps, paludis::last_pmpdso } |
enum | paludis::UserPackageDepSpecOption { paludis::updso_allow_wildcards, paludis::updso_throw_if_set, paludis::updso_no_disambiguation, paludis::last_updso } |
enum | paludis::VersionRequirementsMode { vr_or, paludis::vr_and, paludis::last_vr } |
enum | paludis::VersionSpecOption { paludis::vso_flexible_dashes, paludis::vso_flexible_dots, paludis::vso_ignore_case, paludis::vso_letters_anywhere, paludis::vso_dotted_suffixes, paludis::last_vso } |
enum | paludis::VersionSpecComponentType { paludis::vsct_alpha, paludis::vsct_beta, paludis::vsct_pre, paludis::vsct_rc, paludis::vsct_empty, paludis::vsct_revision, paludis::vsct_patch, paludis::vsct_trypart, paludis::vsct_letter, paludis::vsct_floatlike, paludis::vsct_number, paludis::vsct_scm, paludis::last_vsct } |
Functions | |
std::ostream & | paludis::operator<< (std::ostream &, const URILabel &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const DependencyLabel &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const AdditionalPackageDepSpecRequirement &) PALUDIS_VISIBLE |
PartiallyMadePackageDepSpec | paludis::make_package_dep_spec (const PartiallyMadePackageDepSpecOptions &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const PlainTextDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const PackageDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const URILabelsDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const BlockDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const SimpleURIDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const FetchableURIDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const LicenseDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const ConditionalDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const NamedSetDepSpec &) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const PlainTextLabelDepSpec &) PALUDIS_VISIBLE |
bool | paludis::package_dep_spec_has_properties (const PackageDepSpec &, const PackageDepSpecProperties &) PALUDIS_VISIBLE PALUDIS_ATTRIBUTE((warn_unused_result)) |
VersionSpecOptions | paludis::user_version_spec_options () PALUDIS_ATTRIBUTE((warn_unused_result)) PALUDIS_VISIBLE |
PackageDepSpec | paludis::parse_user_package_dep_spec (const std::string &, const Environment *const, const UserPackageDepSpecOptions &, const Filter &=filter::All()) PALUDIS_VISIBLE |
std::ostream & | paludis::operator<< (std::ostream &, const VersionRequirementsMode &) PALUDIS_VISIBLE |
typedef Sequence<std::tr1::shared_ptr<const AdditionalPackageDepSpecRequirement> > paludis::AdditionalPackageDepSpecRequirements |
typedef ConcreteDependencyLabel<DependencyABILabelTag, DependencyABIsLabel> paludis::DependencyABILabel |
A DependencyABILabel specifies that a dependency can be satisfied by a named ABI.
typedef Sequence<std::tr1::shared_ptr<const DependencyABIsLabel> > paludis::DependencyABIsLabelSequence |
typedef ConcreteDependencyLabel<DependencyAnyLabelTag, DependencyABIsLabel> paludis::DependencyAnyLabel |
A DependencyAnyLabel specifies that a dependency can be satisfied by any ABI.
typedef ConcreteDependencyLabel<DependencyBuildLabelTag, DependencyTypeLabel> paludis::DependencyBuildLabel |
A DependencyBuildLabel specifies build-time requirements for building a package.
typedef ConcreteDependencyLabel<DependencyCompileLabelTag, DependencyTypeLabel> paludis::DependencyCompileLabel |
A DependencyCompileLabel specifies compiled-against requirements for building a package.
typedef ConcreteDependencyLabel<DependencyHostLabelTag, DependencySystemLabel> paludis::DependencyHostLabel |
A DependencyHostLabel specifies host requirements for building a package.
typedef ConcreteDependencyLabel<DependencyInstallLabelTag, DependencyTypeLabel> paludis::DependencyInstallLabel |
A DependencyInstallLabel specifies install-time requirements for building a package.
typedef LabelsDepSpec<DependencyLabel> paludis::DependencyLabelsDepSpec |
A DependencyLabelsDepSpec represents labels in a DependencySpecTree.
typedef Sequence<std::tr1::shared_ptr<const DependencyLabel> > paludis::DependencyLabelSequence |
typedef ConcreteDependencyLabel<DependencyMineLabelTag, DependencyABIsLabel> paludis::DependencyMineLabel |
A DependencyMineLabel specifies that a dependency is satisfied by ABIs equal to those being used to create the depending package.
typedef ConcreteDependencyLabel<DependencyPostLabelTag, DependencyTypeLabel> paludis::DependencyPostLabel |
A DependencyPostLabel specifies build-time requirements for building a package.
typedef ConcreteDependencyLabel<DependencyPrimaryLabelTag, DependencyABIsLabel> paludis::DependencyPrimaryLabel |
A DependencyPrimaryLabel specifies that a dependency can be satisfied by the primary ABI.
typedef ConcreteDependencyLabel<DependencyRecommendedLabelTag, DependencySuggestLabel> paludis::DependencyRecommendedLabel |
A DependencyRecommendedLabel specifies that a dependency is recommended.
typedef ConcreteDependencyLabel<DependencyRequiredLabelTag, DependencySuggestLabel> paludis::DependencyRequiredLabel |
A DependencyRequiredLabel specifies that a dependency is required.
typedef ConcreteDependencyLabel<DependencyRunLabelTag, DependencyTypeLabel> paludis::DependencyRunLabel |
A DependencyRunLabel specifies runtime requirements for building a package.
typedef ConcreteDependencyLabel<DependencySuggestedLabelTag, DependencySuggestLabel> paludis::DependencySuggestedLabel |
typedef Sequence<std::tr1::shared_ptr<const DependencySuggestLabel> > paludis::DependencySuggestLabelSequence |
typedef Sequence<std::tr1::shared_ptr<const DependencySystemLabel> > paludis::DependencySystemLabelSequence |
typedef ConcreteDependencyLabel<DependencyTargetLabelTag, DependencySystemLabel> paludis::DependencyTargetLabel |
A DependencyTargetLabel specifies target requirements for building a package.
typedef Sequence<std::tr1::shared_ptr<const DependencyTypeLabel> > paludis::DependencyTypeLabelSequence |
typedef Set<DepTagEntry, DepTagEntryComparator> paludis::DepListEntryTags |
Tags attached to a DepListEntry.
typedef Options<PartiallyMadePackageDepSpecOption> paludis::PartiallyMadePackageDepSpecOptions |
Options for PartiallyMadePackageDepSpec.
typedef LabelsDepSpec<URILabel> paludis::URILabelsDepSpec |
A URILabelsDepSpec represents labels in a FetchableURISpecTree.
typedef Options<UserPackageDepSpecOption> paludis::UserPackageDepSpecOptions |
typedef Sequence<VersionRequirement> paludis::VersionRequirements |
Options for PartiallyMadePackageDepSpec.
pmpdso_always_use_ranged_deps | Always write [>=1] style dependencies. |
last_pmpdso | Number of keys in paludis::PartiallyMadePackageDepSpecOption. |
Options for parse_user_package_dep_spec.
updso_allow_wildcards | Allow wildcards for category, package. |
updso_throw_if_set |
Check if it's a set, and throw GotASetNotAPackageDepSpec if so.
|
updso_no_disambiguation |
Require an explicit category.
|
last_updso | Number of keys in paludis::UserPackageDepSpecOption. |
The type of a VersionSpec component.
vsct_alpha | An alpha part. |
vsct_beta | A beta part. |
vsct_pre | A pre part. |
vsct_rc | An rc part. |
vsct_empty | Used for ordering, not present in real versions. |
vsct_revision | A revision part. |
vsct_patch | A patch part. |
vsct_trypart | A try part. |
vsct_letter | A letter (e.g. x in 1.2x). |
vsct_floatlike | A number to be compared using float-like rules. |
vsct_number | A number (e.g. 1 or 2 in 1.2_pre3). |
vsct_scm | An scm part. |
last_vsct | Number of keys in paludis::VersionSpecComponentType. |
An option for parsing a VersionSpec.
vso_flexible_dashes | Allow - and _ to be interchanged. |
vso_flexible_dots | Allow - where . is allowed. |
vso_ignore_case | Allow uppercase letters. |
vso_letters_anywhere | Allow 1a2.3 etc. |
vso_dotted_suffixes | Allow 1_alpha2.3. |
last_vso | Number of keys in paludis::VersionSpecOption. |
PartiallyMadePackageDepSpec paludis::make_package_dep_spec | ( | const PartiallyMadePackageDepSpecOptions & | ) |
Create a PackageDepSpec from various rules.
Note the return type is a PartiallyMadePackageDepSpec, which is implicitly convertible to a PackageDepSpec.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const VersionRequirementsMode & | ||||
) |
Write a VersionRequirementsMode to a stream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const PlainTextLabelDepSpec & | ||||
) |
A PlainTextLabelDepSpec can be written to an ostream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const NamedSetDepSpec & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const ConditionalDepSpec & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const LicenseDepSpec & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const FetchableURIDepSpec & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const SimpleURIDepSpec & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const BlockDepSpec & | ||||
) |
std::ostream & paludis::operator<< | ( | std::ostream & | , | |
const URILabelsDepSpec & | ||||
) |
A URILabelsDepSpec can be written to an ostream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const PackageDepSpec & | ||||
) |
A PackageDepSpec can be written to an ostream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const PlainTextDepSpec & | ||||
) |
A PlainTextDepSpec can be written to an ostream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const AdditionalPackageDepSpecRequirement & | ||||
) |
An AdditionalPackageDepSpecRequirement can be written to an ostream.
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const DependencyLabel & | ||||
) |
std::ostream& paludis::operator<< | ( | std::ostream & | , | |
const URILabel & | ||||
) |
bool paludis::package_dep_spec_has_properties | ( | const PackageDepSpec & | , | |
const PackageDepSpecProperties & | ||||
) |
Does a PackageDepSpec match the specified property requirements?
We have a lot of code that wants to know things like "does this spec consist exactly of a cat/pkg:slot?" and "does this spec have anything other than a cat, pkg or slot?". All of these places need to be updated every time a new PackageDepSpec attribute comes along. Using this function makes sure the compiler catches any properties we haven't updated.
PackageDepSpec paludis::parse_user_package_dep_spec | ( | const std::string & | , | |
const Environment * | const, | |||
const UserPackageDepSpecOptions & | , | |||
const Filter & | = filter::All() | |||
) |
VersionSpecOptions paludis::user_version_spec_options | ( | ) |
The VersionSpecOptions to use for parsing a user spec.