Class: Pod::Installer::UserProjectIntegrator
- Inherits:
-
Object
- Object
- Pod::Installer::UserProjectIntegrator
- Defined in:
- lib/cocoapods/installer/user_project_integrator.rb,
lib/cocoapods/installer/user_project_integrator/target_integrator.rb,
lib/cocoapods/installer/user_project_integrator/target_integrator/xcconfig_integrator.rb
Overview
The UserProjectIntegrator integrates the libraries generated by TargetDefinitions of the Podfile with their correspondent user projects.
Defined Under Namespace
Classes: TargetIntegrator
Instance Attribute Summary collapse
-
#installation_root ⇒ Pathname
readonly
The path of the installation.
-
#podfile ⇒ Podfile
readonly
The podfile that should be integrated with the user projects.
-
#sandbox ⇒ Sandbox
readonly
The sandbox used for this installation.
-
#targets ⇒ Array<AggregateTarget>
readonly
The targets represented in the Podfile.
-
#targets_to_integrate ⇒ Array<AggregateTarget>
readonly
The targets that require integration.
-
#use_input_output_paths ⇒ Boolean
(also: #use_input_output_paths?)
readonly
Whether to use input/output paths for build phase scripts.
Instance Method Summary collapse
-
#initialize(podfile, sandbox, installation_root, targets, targets_to_integrate, use_input_output_paths: true) ⇒ UserProjectIntegrator
constructor
Initialize a new instance.
-
#integrate! ⇒ void
Integrates the user projects associated with the TargetDefinitions with the Pods project and its products.
Constructor Details
#initialize(podfile, sandbox, installation_root, targets, targets_to_integrate, use_input_output_paths: true) ⇒ UserProjectIntegrator
Initialize a new instance
56 57 58 59 60 61 62 63 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 56 def initialize(podfile, sandbox, installation_root, targets, targets_to_integrate, use_input_output_paths: true) @podfile = podfile @sandbox = sandbox @installation_root = installation_root @targets = targets @targets_to_integrate = targets_to_integrate @use_input_output_paths = use_input_output_paths end |
Instance Attribute Details
#installation_root ⇒ Pathname (readonly)
31 32 33 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 31 def installation_root @installation_root end |
#podfile ⇒ Podfile (readonly)
19 20 21 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 19 def podfile @podfile end |
#sandbox ⇒ Sandbox (readonly)
23 24 25 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 23 def sandbox @sandbox end |
#targets ⇒ Array<AggregateTarget> (readonly)
35 36 37 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 35 def targets @targets end |
#targets_to_integrate ⇒ Array<AggregateTarget> (readonly)
40 41 42 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 40 def targets_to_integrate @targets_to_integrate end |
#use_input_output_paths ⇒ Boolean (readonly) Also known as: use_input_output_paths?
44 45 46 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 44 def use_input_output_paths @use_input_output_paths end |
Instance Method Details
#integrate! ⇒ void
This method returns an undefined value.
Integrates the user projects associated with the TargetDefinitions with the Pods project and its products.
70 71 72 73 74 75 76 77 |
# File 'lib/cocoapods/installer/user_project_integrator.rb', line 70 def integrate! create_workspace deintegrated_projects = deintegrate_removed_targets integrate_user_targets warn_about_xcconfig_overrides projects_to_save = (user_projects_to_integrate + deintegrated_projects).uniq save_projects(projects_to_save) end |