Struct cargo_metadata::Metadata
source · [−]#[non_exhaustive]pub struct Metadata {
pub packages: Vec<Package>,
pub workspace_members: Vec<PackageId>,
pub resolve: Option<Resolve>,
pub workspace_root: Utf8PathBuf,
pub target_directory: Utf8PathBuf,
pub workspace_metadata: Value,
/* private fields */
}
Expand description
Starting point for metadata returned by cargo metadata
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.packages: Vec<Package>
A list of all crates referenced by this crate (and the crate itself)
workspace_members: Vec<PackageId>
A list of all workspace members
resolve: Option<Resolve>
Dependencies graph
workspace_root: Utf8PathBuf
Workspace root
target_directory: Utf8PathBuf
Build directory
workspace_metadata: Value
The workspace-level metadata object. Null if non-existent.
Implementations
sourceimpl Metadata
impl Metadata
sourcepub fn root_package(&self) -> Option<&Package>
pub fn root_package(&self) -> Option<&Package>
Get the root package of this metadata instance.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Metadata
impl<'de> Deserialize<'de> for Metadata
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnwindSafe for Metadata
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more