pub struct ProjectJson { /* private fields */ }
Expand description
Roots and crates that compose this Rust project.
Implementations§
Source§impl ProjectJson
impl ProjectJson
Sourcepub fn new(
manifest: Option<ManifestPath>,
base: &AbsPath,
data: ProjectJsonData,
) -> ProjectJson
pub fn new( manifest: Option<ManifestPath>, base: &AbsPath, data: ProjectJsonData, ) -> ProjectJson
Create a new ProjectJson instance.
§Arguments
manifest
- The path to therust-project.json
.base
- The path to the workspace root (i.e. the folder containingrust-project.json
)data
- The parsed contents ofrust-project.json
, or project json that’s passed via configuration.
Sourcepub fn crates(&self) -> impl Iterator<Item = (CrateArrayIdx, &Crate)>
pub fn crates(&self) -> impl Iterator<Item = (CrateArrayIdx, &Crate)>
Returns an iterator over the crates in the project.
pub fn crate_by_root(&self, root: &AbsPath) -> Option<Crate>
Sourcepub fn manifest(&self) -> Option<&ManifestPath>
pub fn manifest(&self) -> Option<&ManifestPath>
Returns the path to the project’s manifest, if it exists.
pub fn crate_by_buildfile(&self, path: &AbsPath) -> Option<Build>
Sourcepub fn manifest_or_root(&self) -> &AbsPath
pub fn manifest_or_root(&self) -> &AbsPath
Returns the path to the project’s manifest or root folder, if no manifest exists.
Sourcepub fn project_root(&self) -> &AbsPath
pub fn project_root(&self) -> &AbsPath
Returns the path to the project’s root folder.
pub fn runnables(&self) -> &[Runnable]
Trait Implementations§
Source§impl Clone for ProjectJson
impl Clone for ProjectJson
Source§fn clone(&self) -> ProjectJson
fn clone(&self) -> ProjectJson
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ProjectJson
impl Debug for ProjectJson
Source§impl PartialEq for ProjectJson
impl PartialEq for ProjectJson
impl Eq for ProjectJson
impl StructuralPartialEq for ProjectJson
Auto Trait Implementations§
impl Freeze for ProjectJson
impl RefUnwindSafe for ProjectJson
impl Send for ProjectJson
impl Sync for ProjectJson
impl Unpin for ProjectJson
impl UnwindSafe for ProjectJson
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more