Class: Nanoc::Core::CompilationStages::Preprocess
- Inherits:
-
Nanoc::Core::CompilationStage
- Object
- Nanoc::Core::CompilationStage
- Nanoc::Core::CompilationStages::Preprocess
- Defined in:
- lib/nanoc/core/compilation_stages/preprocess.rb
Instance Method Summary collapse
-
#initialize(action_provider:, site:, dependency_store:, checksum_store:) ⇒ Preprocess
constructor
A new instance of Preprocess.
- #run ⇒ Object
Methods inherited from Nanoc::Core::CompilationStage
Constructor Details
#initialize(action_provider:, site:, dependency_store:, checksum_store:) ⇒ Preprocess
Returns a new instance of Preprocess.
7 8 9 10 11 12 |
# 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 |
Instance Method Details
#run ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# 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 |