Struct cmake_file_api::objects::codemodel_v2::target::Target
source · #[non_exhaustive]pub struct Target {Show 19 fields
pub name: String,
pub id: String,
pub type_name: String,
pub backtrace: Option<usize>,
pub folder: Option<Folder>,
pub paths: TargetPaths,
pub name_on_disk: Option<String>,
pub artifacts: Vec<Artifact>,
pub is_generator_provided: bool,
pub install: Option<Install>,
pub launchers: Vec<Launcher>,
pub link: Option<Link>,
pub archive: Option<Archive>,
pub dependencies: Vec<Dependency>,
pub file_sets: Vec<FileSet>,
pub sources: Vec<Source>,
pub source_groups: Vec<SourceGroup>,
pub compile_groups: Vec<CompileGroup>,
pub backtrace_graph: BacktraceGraph,
}Expand description
A codemodel “target” object is referenced by a “codemodel” version 2 object’s targets array.
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: StringA string specifying the logical name of the target.
id: StringA string uniquely identifying the target. The format is unspecified and should not be interpreted by clients.
type_name: StringA string specifying the type of the target. The value is one of:
- EXECUTABLE
- STATIC_LIBRARY
- SHARED_LIBRARY
- MODULE_LIBRARY
- OBJECT_LIBRARY
- INTERFACE_LIBRARY
- UTILITY
backtrace: Option<usize>Optional member that is present when a CMake language backtrace to the command in the source code that created the target is available. The value is an unsigned integer 0-based index into the backtraceGraph member’s nodes array.
folder: Option<Folder>Optional member that is present when the FOLDER target property is set.
paths: TargetPathsPaths to the target’s build and source directories.
name_on_disk: Option<String>Optional member that is present for executable and library targets that are linked or archived into a single primary artifact. The value is a string specifying the file name of that artifact on disk.
artifacts: Vec<Artifact>Optional member that is present for executable and library targets that produce artifacts on disk meant for consumption by dependents. The value is a JSON array of entries corresponding to the artifacts.
is_generator_provided: boolOptional member that is present with boolean value true if the target is provided by CMake’s build system generator rather than by a command in the source code.
install: Option<Install>Optional member that is present when the target has an install() rule.
launchers: Vec<Launcher>Optional member that is present on executable targets that have at least one launcher specified by the project.
link: Option<Link>Optional member that is present for executables and shared library targets that link into a runtime binary.
archive: Option<Archive>Optional member that is present for static library targets.
dependencies: Vec<Dependency>Optional member that is present when the target depends on other targets.
file_sets: Vec<FileSet>target’s file sets
sources: Vec<Source>target’s sources
source_groups: Vec<SourceGroup>Optional member that is present when sources are grouped together by the source_group() command or by default.
compile_groups: Vec<CompileGroup>Optional member that is present when the target has sources that compile.
backtrace_graph: BacktraceGraphA “codemodel” version 2 “backtrace graph” whose nodes are referenced from backtrace members elsewhere in this “target” object.
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 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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)