[][src]Struct guppy::graph::PackageSelect

pub struct PackageSelect<'g> { /* fields omitted */ }

A selector over a package graph.

This is the entry point for iterators over IDs and dependency links, and dot graph presentation. A PackageSelect is constructed through the select_ methods on PackageGraph.

Methods

impl<'g> PackageSelect<'g>[src]

pub fn into_dot<V>(self, visitor: V) -> impl Display + 'g where
    V: 'g + PackageDotVisitor
[src]

Constructs a representation of the selected graph in dot format.

impl<'g> PackageSelect<'g>[src]

pub fn into_root_ids(
    self,
    direction: DependencyDirection
) -> impl Iterator<Item = &'g PackageId> + ExactSizeIterator + 'g
[src]

Returns the set of "root packages" in the specified direction.

  • If direction is Forward, return the set of packages that do not have any dependencies within the selected graph.
  • If direction is Reverse, return the set of packages that do not have any dependents within the selected graph.

Important traits for IntoIterIds<'g>
pub fn into_iter_ids(
    self,
    direction_opt: Option<DependencyDirection>
) -> IntoIterIds<'g>
[src]

Consumes this query and creates an iterator over package IDs, returned in topological order.

The default order of iteration is determined by the type of query:

  • for all and transitive_deps queries, package IDs are returned in forward order.
  • for transitive_reverse_deps queries, package IDs are returned in reverse order.

Important traits for IntoIterMetadatas<'g>
pub fn into_iter_metadatas(
    self,
    direction_opt: Option<DependencyDirection>
) -> IntoIterMetadatas<'g>
[src]

Consumes this query and creates an iterator over PackageMetadata instances, returned in topological order.

The default order of iteration is determined by the type of query:

  • for all and transitive_deps queries, packages are returned in forward order.
  • for transitive_reverse_deps queries, packages are returned in reverse order.

Consumes this query and creates an iterator over dependency links.

If the iteration is in forward order, for any given package, at least one link where the package is on the to end is returned before any links where the package is on the from end.

If the iteration is in reverse_order, for any given package, at least one link where the package is on the from end is returned before any links where the package is on the to end.

The default order of iteration is determined by the type of query:

  • for all and transitive_deps queries, package IDs are returned in forward order.
  • for transitive_reverse_deps queries, package IDs are returned in reverse order.

Trait Implementations

impl<'g> Clone for PackageSelect<'g>[src]

impl<'g> Debug for PackageSelect<'g>[src]

Auto Trait Implementations

impl<'g> Send for PackageSelect<'g>

impl<'g> Sync for PackageSelect<'g>

impl<'g> Unpin for PackageSelect<'g>

impl<'g> UnwindSafe for PackageSelect<'g>

impl<'g> RefUnwindSafe for PackageSelect<'g>

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]