Skip to main content

Crate

Struct Crate 

Source
pub struct Crate {
    pub id: CrateId,
    pub name: String,
    pub cc: CargoCrate,
    pub dependencies: BTreeSet<CrateId>,
}
Expand description

A crate in a cargo workspace

Has a name, path (stored as the offset of the root), and set of dependencies inside the workspace. To get the dependents of this crate, query the dependency graph with the set of other crate IDs.

Fields§

§id: CrateId

Numeric Id of this crate

§name: String

Package name, not the folder name

§cc: CargoCrate

Path offset of the workspace root

§dependencies: BTreeSet<CrateId>

List of dependencies this crate has inside this workspace

Implementations§

Source§

impl Crate

Source

pub fn new(cc: CargoCrate) -> Self

Source

pub fn process(&mut self, g: &DepGraph)

Call this function once all crates have been loaded into scope

Source

pub fn name(&self) -> &String

Get the crate name

Source

pub fn path(&self) -> &PathBuf

Get the crate path

Source

pub fn version(&self) -> String

Get the current version

Source

pub fn add_dependency(&mut self, id: CrateId)

Add a dependency of this crate

Source

pub fn has_dependency(&self, id: CrateId) -> bool

Check if this crate has a particular dependency

Source

pub fn change_dependency(&mut self, dep: &String, new_ver: &String)

Source

pub fn publish(&mut self, new_version: String)

Publish a new version of this crate

Source

pub fn sync(&mut self)

Trait Implementations§

Source§

impl Clone for Crate

Source§

fn clone(&self) -> Crate

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Crate

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Ord for Crate

Source§

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for Crate

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for Crate

Source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Eq for Crate

Auto Trait Implementations§

§

impl Freeze for Crate

§

impl RefUnwindSafe for Crate

§

impl Send for Crate

§

impl Sync for Crate

§

impl Unpin for Crate

§

impl UnsafeUnpin for Crate

§

impl UnwindSafe for Crate

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.