class Opal::PathReader
def append_paths(*paths)
def append_paths(*paths) file_finder.append_paths(*paths) end
def expand(path)
def expand(path) if Pathname.new(path).absolute? || path =~ RELATIVE_PATH_REGEXP path else find_path(path) end end
def extensions
def extensions file_finder.extensions end
def find_path(path)
def find_path(path) pathname = Pathname(path) return path if pathname.absolute? && pathname.exist? file_finder.find(path) end
def initialize(paths = Opal.paths, extensions = DEFAULT_EXTENSIONS)
def initialize(paths = Opal.paths, extensions = DEFAULT_EXTENSIONS) @file_finder = Hike::Trail.new @file_finder.append_paths(*paths) @file_finder.append_extensions(*extensions) end
def paths
def paths file_finder.paths end
def read(path)
def read(path) full_path = expand(path) return nil if full_path.nil? File.open(full_path, 'rb:UTF-8', &:read) if File.exist?(full_path) end