Sha256: 915da3d4fc699f8aafaf66048e6527aca809d17c2817dfded8d23e02cd565c64

Contents?: true

Size: 580 Bytes

Versions: 9

Compression:

Stored size: 580 Bytes

Contents

class EntryFilter
  attr_reader :site
  def initialize(site)
    @site = site
  end

  def filter(entries)
    entries.reject do |e|
      unless included?(e)
        special?(e) || backup?(e) || excluded?(e) || symlink?(e)
      end
    end
  end

  def included?(entry)
    site.include.glob_include?(entry)
  end

  def special?(entry)
    ['.', '_', '#'].include?(entry[0..0])
  end

  def backup?(entry)
    entry[-1..-1] == '~'
  end

  def excluded?(entry)
    site.exclude.glob_include?(entry)
  end

  def symlink?(entry)
    File.symlink?(entry) && site.safe
  end

end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
jekyll-1.5.1 lib/jekyll/entry_filter.rb
jekyll-1.5.0 lib/jekyll/entry_filter.rb
tigefa-1.1.2 lib/tigefa/entry_filter.rb
tigefa-1.1.1 lib/tigefa/entry_filter.rb
jekyll-1.4.3 lib/jekyll/entry_filter.rb
jekyll-1.4.2 lib/jekyll/entry_filter.rb
jekyll-1.4.1 lib/jekyll/entry_filter.rb
jekyll-1.4.0 lib/jekyll/entry_filter.rb
jekyll-1.3.1 lib/jekyll/entry_filter.rb