pub enum PbxprojOp {
AddResource {
path: PathBuf,
},
AddResourceFolder {
path: PathBuf,
},
AddSource {
path: PathBuf,
},
SetBuildSetting {
key: String,
value: String,
},
LinkSystemFramework {
name: String,
},
}Expand description
Structural mutation request against the iOS xcodeproj. The engine replays these against its pbxproj template renderer; the renderer’s rules decide where (which group, which build phase) to materialize each op.
Variants§
AddResource
Add a file reference to the app target’s “Resources” build
phase. path is relative to gen/ios/.
Emitted as a flat PBXFileReference — Xcode copies only the
file’s basename into the .app bundle root. Use
Self::AddResourceFolder when subdirectories must be
preserved in the bundle.
AddResourceFolder
Add a folder reference (Xcode “blue folder”) to the app
target’s “Resources” build phase. path is relative to
gen/ios/ and names a directory. Unlike Self::AddResource,
Xcode copies the entire directory tree into the .app bundle
preserving its subdirectory structure (so
whisker_assets/images/logo.png lands at
<bundle>/whisker_assets/images/logo.png, not flattened to
logo.png). Backed by a PBXFileReference with
lastKnownFileType = folder.
AddSource
Add a file reference compiled into the app target. path is
relative to gen/ios/.
SetBuildSetting
Add a key = value; line into the app target’s
build-settings dict for both Debug and Release.
LinkSystemFramework
Add a system framework (e.g. AVFoundation.framework) to
the app target’s “Link Binary With Libraries” phase.