Struct cmake_file_api::objects::codemodel_v2::directory::Installer

source ·
#[non_exhaustive]
pub struct Installer {
Show 21 fields pub component: String, pub destination: Option<String>, pub paths: Vec<InstallPath>, pub installer_type: String, pub is_exclude_from_all: bool, pub is_for_all_components: bool, pub is_optional: bool, pub target_id: Option<String>, pub target_index: Option<usize>, pub target_is_import_library: bool, pub target_install_namelink: Option<String>, pub export_name: Option<String>, pub export_targets: Vec<TargetIdAndIndex>, pub runtime_dependency_set_name: Option<String>, pub runtime_dependency_set_type: Option<String>, pub file_set_name: Option<String>, pub file_set_type: Option<String>, pub file_set_directories: Vec<String>, pub file_set_target: Option<TargetIdAndIndex>, pub script_file: Option<PathBuf>, pub backtrace: Option<usize>,
}

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.
§component: String

A string specifying the component selected by the corresponding to install() command invocation.

§destination: Option<String>

Optional member that is present for specific type values below. The value is a string specifying the installation destination path. The path may be absolute or relative to the installation prefix.

§paths: Vec<InstallPath>

Optional member that is present for specific installer_type values below.

§installer_type: String

A string specifying the type of installation rule. The value is one of the following, with some variants providing additional members:

  • file: An install(FILES) or install(PROGRAMS) call. The destination and paths members are populated, with paths under the top-level source directory expressed relative to it. The isOptional member may exist. This type has no additional members.
  • directory: An install(DIRECTORY) call. The destination and paths members are populated, with paths under the top-level source directory expressed relative to it. The isOptional member may exist. This type has no additional members.
  • target: An install(TARGETS) call. The destination and paths members are populated, with paths under the top-level build directory expressed relative to it. The isOptional member may exist. This type has additional members targetId, targetIndex, targetIsImportLibrary, and targetInstallNamelink.
  • export: An install(EXPORT) call. The destination and paths members are populated, with paths under the top-level build directory expressed relative to it. The paths entries refer to files generated automatically by CMake for installation, and their actual values are considered private implementation details. This type has additional members exportName and exportTargets.
  • script: An install(SCRIPT) call. This type has additional member scriptFile.
  • code: An install(CODE) call. This type has no additional members.
  • importedRuntimeArtifacts: An install(IMPORTED_RUNTIME_ARTIFACTS) call. The destination member is populated. The isOptional member may exist. This type has no additional members.
  • runtimeDependencySet: An install(RUNTIME_DEPENDENCY_SET) call or an install(TARGETS) call with RUNTIME_DEPENDENCIES. The destination member is populated. This type has additional members runtimeDependencySetName and runtimeDependencySetType.
  • fileSet: An install(TARGETS) call with FILE_SET. The destination and paths members are populated. The isOptional member may exist. This type has additional members fileSetName, fileSetType, fileSetDirectories, and fileSetTarget. This type was added in codemodel version 2.4.
§is_exclude_from_all: bool

True when install() is called with the EXCLUDE_FROM_ALL option.

§is_for_all_components: bool

True when install(SCRIPT|CODE) is called with the ALL_COMPONENTS option.

§is_optional: bool

True when install() is called with the OPTIONAL option. This is allowed when type is file, directory, or target.

§target_id: Option<String>

Optional member that is present when type is target. The value is a string uniquely identifying the target to be installed. This matches the id member of the target in the main “codemodel” object’s targets array.

§target_index: Option<usize>

Optional member that is present when type is target. The value is an unsigned integer 0-based index into the main “codemodel” object’s targets array for the target to be installed.

§target_is_import_library: bool

True when type is target and the installer is for a Windows DLL import library file or for an AIX linker import file.

§target_install_namelink: Option<String>

Optional member that is present when type is target and the installer corresponds to a target that may use symbolic links to implement the VERSION and SOVERSION target properties. The value is a string indicating how the installer is supposed to handle the symlinks: skip means the installer should skip the symlinks and install only the real file only means the installer should install only the symlinks and not the real file. In all cases the paths member lists what it actually installs.

§export_name: Option<String>

Optional member that is present when type is export. The value is a string specifying the name of the export.

§export_targets: Vec<TargetIdAndIndex>

Optional member that is present when type equals export.

§runtime_dependency_set_name: Option<String>

Optional member that is present when type is runtimeDependencySet and the installer was created by an install(RUNTIME_DEPENDENCY_SET) call. The value is a string specifying the name of the runtime dependency set that was installed.

§runtime_dependency_set_type: Option<String>

Optional member that is present when type is runtimeDependencySet. The value is a string with one of the following values:

  • library: Indicates that this installer installs dependencies that are not macOS frameworks.
  • framework: Indicates that this installer installs dependencies that are macOS frameworks.
§file_set_name: Option<String>

Optional member that is present when type is fileSet. The value is a string with the name of the file set. This field was added in codemodel version 2.4.

§file_set_type: Option<String>

Optional member that is present when type is fileSet. The value is a string with the type of the file set. This field was added in codemodel version 2.4.

§file_set_directories: Vec<String>

Optional member that is present when type is fileSet. The value is a list of strings with the file set’s base directories (determined by genex-evaluation of HEADER_DIRS or HEADER_DIRS_<NAME>). This field was added in codemodel version 2.4.

§file_set_target: Option<TargetIdAndIndex>

Optional member that is present when type is fileSet. This field was added in codemodel version 2.4.

§script_file: Option<PathBuf>

Optional member that is present when type is script. The value is a string specifying the path to the script file on disk, represented with forward slashes. If the file is inside the top-level source directory then the path is specified relative to that directory. Otherwise, the path is absolute.

§backtrace: Option<usize>

Optional member that is present when a CMake language backtrace to the install() or other command invocation that added this installer is available. The value is an unsigned integer 0-based index into the backtraceGraph member’s nodes array.

Trait Implementations§

source§

impl Clone for Installer

source§

fn clone(&self) -> Installer

Returns a copy 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 Installer

source§

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

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

impl Default for Installer

source§

fn default() -> Installer

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for Installer

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl PartialEq for Installer

source§

fn eq(&self, other: &Installer) -> 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 Serialize for Installer

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl StructuralPartialEq for Installer

Auto Trait Implementations§

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§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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,

§

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>,

§

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>,

§

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.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,