Sha256: efd4acd3f1e1f9599c13b52de9f7654d119b798ea7f288a5db84170d40790095

Contents?: true

Size: 1.24 KB

Versions: 14

Compression:

Stored size: 1.24 KB

Contents

module Xcake
  # This class handles resolving the structure
  # of a project. Making sure that the structure of the
  # project is one Xcode can open and makes sense.
  #
  # As part of this it will create default configurations
  # if none are provided and will make sure both the project
  # and targets have all of the same configurations.
  class ProjectStructureResolver

    include Visitor

    # @return [Project] the project to resolve structure for
    attr_accessor :project

    protected

    def visit_project(project)

      puts "Resolving Project..."

      @project = project

      @project.debug_configuration :Debug if @project.debug_configurations.count == 0
      @project.release_configuration :Release if @project.release_configurations.count == 0
    end

    def leave_project(project)
    end

    def visit_target(target)

      puts "Resolving target #{target.name}..."

      @project.debug_configurations.each do |b|
        target.debug_configuration(b.name)
      end

      @project.release_configurations.each do |b|
        target.release_configuration(b.name)
      end
    end

    def leave_target(target)
    end

    def visit_configuration(configuration)
    end

    def leave_configuration(configuration)
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
xcake-0.5.3 lib/xcake/project_structure_resolver.rb
xcake-0.5.2 lib/xcake/project_structure_resolver.rb
xcake-0.5.1 lib/xcake/project_structure_resolver.rb
xcake-0.5.0 lib/xcake/project_structure_resolver.rb
xcake-0.4.8 lib/xcake/project_structure_resolver.rb
xcake-0.4.7 lib/xcake/project_structure_resolver.rb
xcake-0.4.6 lib/xcake/project_structure_resolver.rb
xcake-0.4.5 lib/xcake/project_structure_resolver.rb
xcake-0.4.4 lib/xcake/project_structure_resolver.rb
xcake-0.4.3 lib/xcake/project_structure_resolver.rb
xcake-0.4.2 lib/xcake/project_structure_resolver.rb
xcake-0.4.1 lib/xcake/project_structure_resolver.rb
xcake-0.3.1 lib/xcake/project_structure_resolver.rb
xcake-0.3.0 lib/xcake/project_structure_resolver.rb