Class: Pod::Installer::Xcode::PodsProjectGenerator
- Inherits:
 - 
      Object
      
        
- Object
 - Pod::Installer::Xcode::PodsProjectGenerator
 
 
- Defined in:
 - lib/cocoapods/installer/xcode/pods_project_generator.rb,
lib/cocoapods/installer/xcode/pods_project_generator_result.rb,
lib/cocoapods/installer/xcode/pods_project_generator/target_installer.rb,
lib/cocoapods/installer/xcode/pods_project_generator/app_host_installer.rb,
lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb,
lib/cocoapods/installer/xcode/pods_project_generator/pod_target_integrator.rb,
lib/cocoapods/installer/xcode/pods_project_generator/target_installer_helper.rb,
lib/cocoapods/installer/xcode/pods_project_generator/file_references_installer.rb,
lib/cocoapods/installer/xcode/pods_project_generator/aggregate_target_installer.rb,
lib/cocoapods/installer/xcode/pods_project_generator/target_installation_result.rb 
Overview
The PodsProjectGenerator handles generation of CocoaPods Xcode projects.
Direct Known Subclasses
Defined Under Namespace
Modules: TargetInstallerHelper Classes: AggregateTargetInstaller, AppHostInstaller, FileReferencesInstaller, InstallationResults, PodTargetInstaller, PodTargetIntegrator, PodsProjectGeneratorResult, TargetInstallationResult, TargetInstaller
Instance Attribute Summary collapse
- 
  
    
      #aggregate_targets  ⇒ Array<AggregateTarget> 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The model representations of an aggregation of pod targets generated for a target definition in the Podfile.
 - 
  
    
      #build_configurations  ⇒ Hash{String => Symbol} 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The build configurations that need to be installed.
 - 
  
    
      #config  ⇒ Config 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The global CocoaPods configuration.
 - 
  
    
      #installation_options  ⇒ InstallationOptions 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The installation options from the Podfile.
 - 
  
    
      #metadata_cache  ⇒ ProjectMetadataCache 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The metadata cache used to reconstruct target dependencies.
 - 
  
    
      #pod_targets  ⇒ Array<PodTarget> 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The model representations of pod targets.
 - 
  
    
      #project_object_version  ⇒ Integer 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The object version for the projects we will generate.
 - 
  
    
      #sandbox  ⇒ Sandbox 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
The sandbox where the Pods should be installed.
 
Instance Method Summary collapse
- 
  
    
      #configure_schemes(project, pod_targets, generator_result)  ⇒ void 
    
    
  
  
  
  
  
  
  
  
  
    
Configure schemes for the specified project and pod targets.
 - 
  
    
      #initialize(sandbox, aggregate_targets, pod_targets, build_configurations, installation_options, config, project_object_version, metadata_cache = nil)  ⇒ PodsProjectGenerator 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
Initialize a new instance.
 
Constructor Details
#initialize(sandbox, aggregate_targets, pod_targets, build_configurations, installation_options, config, project_object_version, metadata_cache = nil) ⇒ PodsProjectGenerator
Initialize a new instance
      65 66 67 68 69 70 71 72 73 74 75  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 65 def initialize(sandbox, aggregate_targets, pod_targets, build_configurations, , config, project_object_version, = nil) @sandbox = sandbox @aggregate_targets = aggregate_targets @pod_targets = pod_targets @build_configurations = build_configurations @installation_options = @config = config @project_object_version = project_object_version @metadata_cache = end  | 
  
Instance Attribute Details
#aggregate_targets ⇒ Array<AggregateTarget> (readonly)
Returns The model representations of an aggregation of pod targets generated for a target definition in the Podfile.
      28 29 30  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 28 def aggregate_targets @aggregate_targets end  | 
  
#build_configurations ⇒ Hash{String => Symbol} (readonly)
Returns The build configurations that need to be installed.
      36 37 38  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 36 def build_configurations @build_configurations end  | 
  
#config ⇒ Config (readonly)
Returns the global CocoaPods configuration.
      44 45 46  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 44 def config @config end  | 
  
#installation_options ⇒ InstallationOptions (readonly)
Returns the installation options from the Podfile.
      40 41 42  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 40 def @installation_options end  | 
  
#metadata_cache ⇒ ProjectMetadataCache (readonly)
Returns the metadata cache used to reconstruct target dependencies.
      52 53 54  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 52 def @metadata_cache end  | 
  
#pod_targets ⇒ Array<PodTarget> (readonly)
Returns The model representations of pod targets.
      32 33 34  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 32 def pod_targets @pod_targets end  | 
  
#project_object_version ⇒ Integer (readonly)
Returns the object version for the projects we will generate.
      48 49 50  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 48 def project_object_version @project_object_version end  | 
  
#sandbox ⇒ Sandbox (readonly)
Returns The sandbox where the Pods should be installed.
      22 23 24  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 22 def sandbox @sandbox end  | 
  
Instance Method Details
#configure_schemes(project, pod_targets, generator_result) ⇒ void
This method returns an undefined value.
Configure schemes for the specified project and pod targets. Schemes for development pods will be shared if requested by the integration.
      86 87 88 89 90 91  | 
    
      # File 'lib/cocoapods/installer/xcode/pods_project_generator.rb', line 86 def configure_schemes(project, pod_targets, generator_result) pod_targets.each do |pod_target| share_scheme = pod_target.should_build? && share_scheme_for_development_pod?(pod_target.pod_name) && sandbox.local?(pod_target.pod_name) configure_schemes_for_pod_target(project, pod_target, share_scheme, generator_result) end end  |