class Fig::NonRepositoryPackages
Public Class Methods
new(parser)
click to toggle source
# File lib/fig/non_repository_packages.rb, line 11 def initialize(parser) @parser = parser reset_cached_data return end
Public Instance Methods
[](file_path)
click to toggle source
# File lib/fig/non_repository_packages.rb, line 25 def [](file_path) file_path = File.expand_path file_path if package = @packages_by_path[file_path] return package end if ! File.exist? file_path return end load_package file_path return @packages_by_path[file_path] end
reset_cached_data()
click to toggle source
# File lib/fig/non_repository_packages.rb, line 19 def reset_cached_data @packages_by_path = {} return end
Private Instance Methods
load_package(file_path)
click to toggle source
# File lib/fig/non_repository_packages.rb, line 43 def load_package(file_path) content = File.read file_path descriptor = Fig::PackageDescriptor.new(nil, nil, nil, :file_path => file_path) unparsed_package = Fig::NotYetParsedPackage.new unparsed_package.descriptor = descriptor unparsed_package.working_directory = unparsed_package.include_file_base_directory = File.dirname(file_path) unparsed_package.source_description = file_path unparsed_package.unparsed_text = content package = @parser.parse_package unparsed_package @packages_by_path[file_path] = package return end