class RXCode::Project
Constants
- XCODE_PROJECT_EXTENSION
PROJECT DISCOVERY & LOOKUP =================================================================================¶ ↑
Attributes
path[R]
Public Class Methods
is_project_at_path?(project_path)
click to toggle source
Determines if the provided file path is an XCode
project
# File lib/rxcode/models/project.rb, line 28 def self.is_project_at_path?(project_path) File.directory?(project_path) && File.extname(project_path) == XCODE_PROJECT_EXTENSION end
new(path, options = nil)
click to toggle source
Calls superclass method
RXCode::Model::new
# File lib/rxcode/models/project.rb, line 5 def initialize(path, options = nil) raise "#{path.inspect} is not a valid XCode project path" unless self.class.is_project_at_path?(path) super nil @path = path if options && options[:workspace] @workspace = options[:workspace] end end
Public Instance Methods
archive()
click to toggle source
# File lib/rxcode/models/project.rb, line 40 def archive @archive ||= begin a = Archive.new(project_archive_path) { |archived_object| Model.map_archived_object(archived_object) } a.root_object.model_object = self a end end
archive_object()
click to toggle source
# File lib/rxcode/models/project.rb, line 49 def archive_object archive.root_object end
build_configuration_list()
click to toggle source
project_archive_path()
click to toggle source
# File lib/rxcode/models/project.rb, line 36 def project_archive_path File.join(self.path, 'project.pbxproj') end
target_names()
click to toggle source
# File lib/rxcode/models/project.rb, line 59 def target_names targets.map(&:name) end