pkgcore.ebuild.atom module¶
gentoo ebuild atom, should be generalized into an agnostic base
- class pkgcore.ebuild.atom.atom(*a, **kw)[source]¶
Bases:
AndRestriction
Currently implements gentoo ebuild atom parsing.
Should be converted into an agnostic dependency base.
- blocks¶
- blocks_strongly¶
- property blocks_temp_ignorable¶
- cnf_solutions(full_solution_expansion=False)[source]¶
returns solutions in CNF (conjunctive normalized form) of this instance
- Parameters:
full_solution_expansion – controls whether to expand everything (break apart atoms for example); this isn’t likely what you want
- cpvstr¶
- evaluate_depset = None¶
- property get_atom_without_use_deps¶
Return atom object stripped of USE dependencies.
- intersects(other)[source]¶
Check if a passed in atom “intersects” this restriction’s atom.
Two atoms “intersect” if a package can be constructed that matches both:
if you query for just “dev-lang/python” it “intersects” both “dev-lang/python” and “>=dev-lang/python-2.4”
if you query for “=dev-lang/python-2.4” it “intersects” “>=dev-lang/python-2.4” and “dev-lang/python” but not “<dev-lang/python-2.3”
USE and slot deps are also taken into account.
The block/nonblock state of the atom is ignored.
- property is_simple¶
- iter_cnf_solutions(full_solution_expansion=False)[source]¶
returns solutions in CNF (conjunctive normalized form) of this instance
- Parameters:
full_solution_expansion – controls whether to expand everything (break apart atoms for example); this isn’t likely what you want
- iter_dnf_solutions(full_solution_expansion=False)[source]¶
generater yielding DNF (disjunctive normalized form) of this instance.
- Parameters:
full_solution_expansion – controls whether to expand everything (break apart atoms for example); this isn’t likely what you want
- negate = False¶
- negate_vers¶
- property no_usedeps¶
alias to get_atom_without_use_deps
- op¶
- repo_id¶
- restrictions¶
- slot¶
- slot_operator¶
- subslot¶
- type = 'package'¶
- use¶
- property weak_blocker¶
alias to blocks_temp_ignorable
- class pkgcore.ebuild.atom.transitive_use_atom(*a, **kw)[source]¶
Bases:
atom
- cnf_solutions(full_solution_expansion=False)¶
returns solutions in CNF (conjunctive normalized form) of this instance
- Parameters:
full_solution_expansion – controls whether to expand everything (break apart atoms for example); this isn’t likely what you want
- is_simple = False¶
- iter_dnf_solutions(full_solution_expansion=False)¶
generater yielding DNF (disjunctive normalized form) of this instance.
- Parameters:
full_solution_expansion – controls whether to expand everything (break apart atoms for example); this isn’t likely what you want
- restrictions¶