Português (Portuguese)
Appearance
Português (Portuguese)
Appearance
STRUCT
Workspace Contents
nameprojectsschemesfileHeaderTemplateadditionalFilesgenerationOptionsinit(name:projects:schemes:fileHeaderTemplate:additionalFiles:generationOptions:)public struct Workspace: Codable, Equatable, SendableA workspace representation.
By default, tuist generate generates an Xcode workspace that has the same name as the current project. It includes the project and all its dependencies.
Tuist allows customizing this behaviour by defining a workspace manifest within a Workspace.swift file.
Workspace manifests allow specifying a list of projects to generate and include in an Xcode workspace. Those projects don’t necessarily have to depend on one another. Additionally, files and folder references (such as documentation files) can be included in a workspace manifest.
The snippet below shows an example workspace manifest:
import ProjectDescription
let workspace = Workspace(
name: "Workspace",
projects: ["Projects/**"]
)name public let name: StringThe name of the workspace. Also, the file name of the generated Xcode workspace.
projects public let projects: [Path]The paths (or glob patterns) to manifest projects.
schemes public let schemes: [Scheme]The custom schemes for the workspace. Default schemes for each target are generated by default.
fileHeaderTemplate public let fileHeaderTemplate: FileHeaderTemplate?The custom file header template for Xcode built-in file templates.
additionalFiles public let additionalFiles: [FileElement]The additional files for the workspace. For project's additional files, see Project/additionalFiles.
generationOptions public let generationOptions: GenerationOptionsThe generation configuration of the workspace.
init(name:projects:schemes:fileHeaderTemplate:additionalFiles:generationOptions:) public init(
name: String,
projects: [Path],
schemes: [Scheme] = [],
fileHeaderTemplate: FileHeaderTemplate? = nil,
additionalFiles: [FileElement] = [],
generationOptions: GenerationOptions = .options()
)