module Jekyll::SiteIgnoreLayout

Public Class Methods

included(base) click to toggle source
   # File lib/jekyll/site_ignore_layout.rb
 5 def self.included(base)
 6   base.class_eval do
 7     # Determine if a layout is ignored and cache the result
 8     def ignored_layout?(layout)
 9       return false unless config['ignored_layouts']
10 
11       unless config['ignored_layouts'].is_a? Array
12         raise Jekyll::Errors::InvalidConfigurationError, "`ignored_layouts` must be an Array"
13       end
14 
15       @ignored_layout ||= {}
16 
17       # We could use ||= but it runs everytime when inclusion
18       # returns false.
19       if @ignored_layout.key? layout
20         @ignored_layout[layout]
21       else
22         @ignored_layout[layout] = config['ignored_layouts'].include?(layout)
23       end
24     end
25   end
26 end

Public Instance Methods

ignored_layout?(layout) click to toggle source

Determine if a layout is ignored and cache the result

   # File lib/jekyll/site_ignore_layout.rb
 8 def ignored_layout?(layout)
 9   return false unless config['ignored_layouts']
10 
11   unless config['ignored_layouts'].is_a? Array
12     raise Jekyll::Errors::InvalidConfigurationError, "`ignored_layouts` must be an Array"
13   end
14 
15   @ignored_layout ||= {}
16 
17   # We could use ||= but it runs everytime when inclusion
18   # returns false.
19   if @ignored_layout.key? layout
20     @ignored_layout[layout]
21   else
22     @ignored_layout[layout] = config['ignored_layouts'].include?(layout)
23   end
24 end