class Nanoc::Core::CompilationStages::Preprocess
Public Class Methods
new(action_provider:, site:, dependency_store:, checksum_store:)
click to toggle source
# File lib/nanoc/core/compilation_stages/preprocess.rb, line 7 def initialize(action_provider:, site:, dependency_store:, checksum_store:) @action_provider = action_provider @site = site @dependency_store = dependency_store @checksum_store = checksum_store end
Public Instance Methods
run()
click to toggle source
# File lib/nanoc/core/compilation_stages/preprocess.rb, line 14 def run return if @site.preprocessed? if @action_provider.need_preprocessing? @site.data_source = Nanoc::Core::InMemoryDataSource.new(@site.items, @site.layouts, @site.data_source) @action_provider.preprocess(@site) @dependency_store.items = @site.items @dependency_store.layouts = @site.layouts @checksum_store.objects = @site.items.to_a + @site.layouts.to_a + @site.code_snippets + [@site.config] end @site.mark_as_preprocessed @site.freeze end