Sha256: 6b66a583ef3cc510a4b2b94f00fc4314b9f0db9d392c6a628b9519d1eab318fa
Contents?: true
Size: 739 Bytes
Versions: 9
Compression:
Stored size: 739 Bytes
Contents
# frozen_string_literal: true module DevSuite module Utils module FileLoader class LoaderManager def load(path) loader = find_loader_for(path) loader.load(path) end private def find_loader_for(path) extension = extract_extension(path) loader = registry.find_loader(extension) raise LoaderNotFoundError, "No loader registered for #{extension}" unless loader loader end def extract_extension(path) ::File.extname(path).delete_prefix(".") end def registry Config.configuration.registry end end class LoaderNotFoundError < StandardError; end end end end
Version data entries
9 entries across 9 versions & 1 rubygems