pub struct AppleDiscovery {
pub host_os: String,
pub host_arch: String,
pub developer_dir: Option<Utf8PathBuf>,
pub xcode_version: Option<String>,
pub simulator_sdk: Option<SimulatorSdk>,
pub device_sdk: Option<IosDeviceSdk>,
pub simulator_runtimes: Vec<SimulatorRuntime>,
pub installed_rust_targets: Vec<String>,
pub host_tools: AppleHostTools,
pub executable_search_paths: Vec<Utf8PathBuf>,
}Expand description
Complete, read-only Apple development inventory.
Fields§
§host_os: StringHost operating system.
host_arch: StringHost CPU architecture.
developer_dir: Option<Utf8PathBuf>Selected Xcode developer directory.
xcode_version: Option<String>Xcode version output.
simulator_sdk: Option<SimulatorSdk>Selected iPhone Simulator SDK.
device_sdk: Option<IosDeviceSdk>Selected physical-iPhone SDK.
simulator_runtimes: Vec<SimulatorRuntime>Installed CoreSimulator runtimes; optional for build-only workflows.
installed_rust_targets: Vec<String>Rust targets reported as installed by rustup.
host_tools: AppleHostToolsDiscovered host tools.
executable_search_paths: Vec<Utf8PathBuf>Every executable directory searched.
Implementations§
Source§impl AppleDiscovery
impl AppleDiscovery
Sourcepub fn select_toolchain(&self) -> Result<AppleToolchain, AppleError>
pub fn select_toolchain(&self) -> Result<AppleToolchain, AppleError>
Select the complete build-only toolchain for an Apple Silicon simulator bundle.
§Errors
Returns AppleError when the host is unsupported, full Xcode/SDK or a
required executable is absent, or the simulator Rust target is not installed.
Sourcepub fn select_device_toolchain(&self) -> Result<IosDeviceToolchain, AppleError>
pub fn select_device_toolchain(&self) -> Result<IosDeviceToolchain, AppleError>
Select a complete physical-iPhone toolchain without requiring Simulator support.
§Errors
Returns AppleError when the host is unsupported, the selected developer
directory is not a full Xcode installation with iPhoneOS support, required
tools are absent or non-absolute, SDK evidence is incomplete, or the exact
physical-iPhone Rust target is not installed.
Trait Implementations§
Source§impl Clone for AppleDiscovery
impl Clone for AppleDiscovery
Source§impl Debug for AppleDiscovery
impl Debug for AppleDiscovery
Source§impl<'de> Deserialize<'de> for AppleDiscovery
impl<'de> Deserialize<'de> for AppleDiscovery
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 AppleDiscovery
Source§impl PartialEq for AppleDiscovery
impl PartialEq for AppleDiscovery
Source§impl Serialize for AppleDiscovery
impl Serialize for AppleDiscovery
impl StructuralPartialEq for AppleDiscovery
Auto Trait Implementations§
impl Freeze for AppleDiscovery
impl RefUnwindSafe for AppleDiscovery
impl Send for AppleDiscovery
impl Sync for AppleDiscovery
impl Unpin for AppleDiscovery
impl UnsafeUnpin for AppleDiscovery
impl UnwindSafe for AppleDiscovery
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.