Class: Bibliothecary::Parsers::Carthage
- Inherits:
-
Object
- Object
- Bibliothecary::Parsers::Carthage
- Defined in:
- lib/bibliothecary/parsers/carthage.rb
Constant Summary collapse
- PLATFORM_NAME =
'Carthage'
Class Method Summary collapse
- .analyse(folder_path, file_list) ⇒ Object
- .analyse_cartfile(folder_path, file_list) ⇒ Object
- .analyse_cartfile_private(folder_path, file_list) ⇒ Object
- .analyse_cartfile_resolved(folder_path, file_list) ⇒ Object
- .parse(filename, file_contents) ⇒ Object
Class Method Details
.analyse(folder_path, file_list) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/bibliothecary/parsers/carthage.rb', line 20 def self.analyse(folder_path, file_list) [ analyse_cartfile(folder_path, file_list), analyse_cartfile_private(folder_path, file_list), analyse_cartfile_resolved(folder_path, file_list) ] end |
.analyse_cartfile(folder_path, file_list) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/bibliothecary/parsers/carthage.rb', line 28 def self.analyse_cartfile(folder_path, file_list) path = file_list.find{|path| path.gsub(folder_path, '').gsub(/^\//, '').match(/^Cartfile$/) } return unless path manifest = CartfileParser.new(:runtime, File.open(path).read) { platform: PLATFORM_NAME, path: path, dependencies: manifest.dependencies } end |
.analyse_cartfile_private(folder_path, file_list) ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/bibliothecary/parsers/carthage.rb', line 41 def self.analyse_cartfile_private(folder_path, file_list) path = file_list.find{|path| path.gsub(folder_path, '').gsub(/^\//, '').match(/^Cartfile\.private$/) } return unless path manifest = CartfileParser.new(:runtime, File.open(path).read) { platform: PLATFORM_NAME, path: path, dependencies: manifest.dependencies } end |
.analyse_cartfile_resolved(folder_path, file_list) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/bibliothecary/parsers/carthage.rb', line 54 def self.analyse_cartfile_resolved(folder_path, file_list) path = file_list.find{|path| path.gsub(folder_path, '').gsub(/^\//, '').match(/^Cartfile\.resolved$/) } return unless path manifest = CartfileParser.new(:runtime, File.open(path).read) { platform: PLATFORM_NAME, path: path, dependencies: manifest.dependencies } end |
.parse(filename, file_contents) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/bibliothecary/parsers/carthage.rb', line 8 def self.parse(filename, file_contents) if filename.match(/^Cartfile$/) manifest = CartfileParser.new(:runtime, file_contents).dependencies elsif filename.match(/^Cartfile\.private$/) manifest = CartfileParser.new(:runtime, file_contents).dependencies elsif filename.match(/^Cartfile\.resolved$/) manifest = CartfileParser.new(:runtime, file_contents).dependencies else [] end end |