Sha256: 5d10392905caf331e0442c15e4d01b402bed919b6ef490332cb1b30add960013

Contents?: true

Size: 676 Bytes

Versions: 71

Compression:

Stored size: 676 Bytes

Contents

module Jasmine
  class PathExpander

    def self.expand(base_directory, patterns, globber = Dir.method(:glob))
      negative, positive = patterns.partition {|pattern| /^!/ =~ pattern}
      chosen, negated = [positive, negative].collect do |patterns|
        patterns.map do |path|
          files = globber.call(File.join(base_directory, path.gsub(/^!/, '')))
          if files.empty? && !(path =~ /\*|^\!/)
            if path[0..3] == 'http'
              files << path
            else
              files = [File.join(base_directory, path)]
            end
          end
          files.sort
        end.flatten.uniq
      end
      chosen - negated
    end
  end
end

Version data entries

71 entries across 56 versions & 2 rubygems

Version Path
tdiary-5.2.4 vendor/bundle/ruby/3.1.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.2.3 vendor/bundle/ruby/3.1.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.2.2 vendor/bundle/ruby/3.1.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.2.1 vendor/bundle/ruby/3.1.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
jasmine-3.99.0 lib/jasmine/path_expander.rb
tdiary-5.2.0 vendor/bundle/ruby/2.7.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.2.0 vendor/bundle/ruby/3.0.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
jasmine-3.10.0 lib/jasmine/path_expander.rb
tdiary-5.1.7 vendor/bundle/ruby/3.0.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.1.7 vendor/bundle/ruby/2.7.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
jasmine-3.9.2 lib/jasmine/path_expander.rb
jasmine-3.9.1 lib/jasmine/path_expander.rb
jasmine-3.9.0 lib/jasmine/path_expander.rb
jasmine-3.8.1 lib/jasmine/path_expander.rb
jasmine-3.8.0 lib/jasmine/path_expander.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/tdiary-5.1.5/vendor/bundle/ruby/3.0.0/gems/tdiary-5.1.4/vendor/bundle/ruby/2.7.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.1.6 vendor/bundle/ruby/3.0.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/tdiary-5.1.5/vendor/bundle/ruby/3.0.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb
tdiary-5.1.6 vendor/bundle/ruby/2.7.0/gems/tdiary-5.1.5/vendor/bundle/ruby/2.7.0/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb