class Pod::Installer

Public Instance Methods

resolve_all_pod_build_types(pod_targets) click to toggle source

Walk through pod dependencies and assign build_type from root through all transitive dependencies

# File lib/cocoapods-user-defined-build-types/private_api_hooks.rb, line 61
def resolve_all_pod_build_types(pod_targets)
  root_pod_building_options = Pod::Podfile::TargetDefinition.root_pod_building_options.clone

  pod_targets.each do |target|
    next if not root_pod_building_options.key?(target.name)

    build_type = root_pod_building_options[target.name]
    dependencies = target.dependent_targets

    # Cascade build_type down
    while not dependencies.empty?
      new_dependencies = []
      dependencies.each do |dep_target|
        dep_target.user_defined_build_type = build_type
        new_dependencies.push(*dep_target.dependent_targets)
      end
      dependencies = new_dependencies
    end

    target.user_defined_build_type = build_type
  end
end