class Grouik::Helpers::Loader
Loader
helper, see “Grouik::Loader“
Public Instance Methods
collect_loadables(paths)
click to toggle source
Collect loadables by paths
@param [Array<String>] paths @return [Grouik::Types::Loadables]
# File src/lib/grouik/helpers/loader.rb, line 61 def collect_loadables(paths) loadables = self.make_loadables paths.each do |path| self.files_in_path(path).each do |file| loadables = loadables.add_file(file, path.to_s) end end loadables end
files_in_path(path)
click to toggle source
@param [String] path @return [Array<Pathname>]
# File src/lib/grouik/helpers/loader.rb, line 47 def files_in_path(path) loaddir = path.to_s basereg = %r{^#{Regexp.quote(loaddir)}\/} Dir.glob(path.join('**/*.rb')) .sort .map { |file| file.gsub(basereg, '') } .map { |file| Pathname.new(file) } end
make_ignores(input)
click to toggle source
Make ignores
@param [Array<String|Regexp>] input @return [Array<Regexp>]
# File src/lib/grouik/helpers/loader.rb, line 24 def make_ignores(input) input.to_a.map { |s| s.is_a?(Regexp) ? s : /^#{s}$/ } end
make_loadables()
click to toggle source
Make loadables
@@return [Grouik::Types::Loadables]
# File src/lib/grouik/helpers/loader.rb, line 16 def make_loadables Grouik::Types::Loadables.new end
pwd()
click to toggle source
@return [Pathname]
# File src/lib/grouik/helpers/loader.rb, line 41 def pwd Pathname.new(Dir.pwd) end
register_paths(basedir, paths)
click to toggle source
Register paths
@param [String] basedir @param [Array<String|Pathname>] paths
# File src/lib/grouik/helpers/loader.rb, line 32 def register_paths(basedir, paths) basedir = Pathname.new(basedir) paths.reverse.each do |path| $LOAD_PATH.unshift basedir.realpath.join(path).to_s end end