#[non_exhaustive]pub struct Target {
pub name: String,
pub kind: Vec<String>,
pub crate_types: Vec<String>,
pub required_features: Vec<String>,
pub src_path: Utf8PathBuf,
pub edition: Edition,
pub doctest: bool,
pub test: bool,
pub doc: bool,
}
Expand description
A single target (lib, bin, example, …) provided by a crate
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.name: String
Name as given in the Cargo.toml
or generated from the file name
kind: Vec<String>
Kind of target (“bin”, “example”, “test”, “bench”, “lib”, “custom-build”)
crate_types: Vec<String>
Almost the same as kind
, except when an example is a library instead of an executable.
In that case crate_types
contains things like rlib
and dylib
while kind
is example
required_features: Vec<String>
This target is built only if these features are enabled.
It doesn’t apply to lib
targets.
src_path: Utf8PathBuf
Path to the main source file of the target
edition: Edition
Rust edition for this target
doctest: bool
Whether or not this target has doc tests enabled, and the target is compatible with doc testing.
This is always true
if running with a version of Cargo older than 1.37.
test: bool
Whether or not this target is tested by default by cargo test
.
This is always true
if running with a version of Cargo older than 1.47.
doc: bool
Whether or not this target is documented by cargo doc
.
This is always true
if running with a version of Cargo older than 1.50.
Implementations§
Source§impl Target
impl Target
Sourcepub fn is_example(&self) -> bool
pub fn is_example(&self) -> bool
Return true if this target is of kind “example”.
Sourcepub fn is_custom_build(&self) -> bool
pub fn is_custom_build(&self) -> bool
Return true if this target is of kind “custom-build”.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Target
impl<'de> Deserialize<'de> for Target
Source§fn 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>,
impl Eq for Target
impl StructuralPartialEq for Target
Auto Trait Implementations§
impl Freeze for Target
impl RefUnwindSafe for Target
impl Send for Target
impl Sync for Target
impl Unpin for Target
impl UnwindSafe for Target
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)