Sha256: 6e65ba1a7d3c199bdec4112b8ac6207e52b79e05c5a9b46f5130ffcea6947749

Contents?: true

Size: 654 Bytes

Versions: 29

Compression:

Stored size: 654 Bytes

Contents

require 'opal/hike_path_finder'

module Opal
  class PathReader
    def initialize(file_finder = HikePathFinder.new)
      @file_finder = file_finder
    end

    def read(path)
      full_path = expand(path)
      return nil if full_path.nil?
      File.open(full_path, 'rb:UTF-8'){|f| f.read}
    end

    def expand(path)
      if Pathname.new(path).absolute? || path =~ %r{\A\.?\.#{File::SEPARATOR}}
        path
      else
        file_finder.find(path)
      end
    end

    def paths
      file_finder.paths
    end

    def append_paths(*paths)
      file_finder.append_paths(*paths)
    end

    private

    attr_reader :file_finder
  end
end

Version data entries

29 entries across 29 versions & 2 rubygems

Version Path
opal-0.10.6 lib/opal/path_reader.rb
opal-0.10.6.beta lib/opal/path_reader.rb
opal-0.10.5 lib/opal/path_reader.rb
opal-0.10.4 lib/opal/path_reader.rb
opal-0.10.3 lib/opal/path_reader.rb
opal-0.10.2 lib/opal/path_reader.rb
opal-0.10.1 lib/opal/path_reader.rb
opal-0.10.0 lib/opal/path_reader.rb
opal-0.10.0.rc2 lib/opal/path_reader.rb
opal-0.9.4 lib/opal/path_reader.rb
opal-0.9.3 lib/opal/path_reader.rb
opal-0.10.0.rc1 lib/opal/path_reader.rb
opal-0.10.0.beta5 lib/opal/path_reader.rb
opal-0.10.0.beta4 lib/opal/path_reader.rb
opal-0.10.0.beta3 lib/opal/path_reader.rb
opal-0.10.0.beta2 lib/opal/path_reader.rb
opal-0.10.0.beta1 lib/opal/path_reader.rb
opal-0.9.2 lib/opal/path_reader.rb
opal-0.9.0 lib/opal/path_reader.rb
opal-0.9.0.rc1 lib/opal/path_reader.rb