class Nanoc::Core::ViewContextForCompilation
Attributes
compilation_context[R]
compiled_content_store[R]
dependency_tracker[R]
items[R]
reps[R]
Public Class Methods
new(reps:, items:, dependency_tracker:, compilation_context:, compiled_content_store:)
click to toggle source
# File lib/nanoc/core/view_context_for_compilation.rb, line 21 def initialize(reps:, items:, dependency_tracker:, compilation_context:, compiled_content_store:) @reps = reps @items = items @dependency_tracker = dependency_tracker @compilation_context = compilation_context @compiled_content_store = compiled_content_store end
Public Instance Methods
assigns_for(rep, site:)
click to toggle source
# File lib/nanoc/core/view_context_for_compilation.rb, line 30 def assigns_for(rep, site:) last_content = @compiled_content_store.get_current(rep) content_or_filename_assigns = if last_content.binary? { filename: last_content.filename } else { content: last_content.string } end content_or_filename_assigns.merge( item: Nanoc::Core::CompilationItemView.new(rep.item, self), rep: Nanoc::Core::CompilationItemRepView.new(rep, self), item_rep: Nanoc::Core::CompilationItemRepView.new(rep, self), items: Nanoc::Core::ItemCollectionWithRepsView.new(site.items, self), layouts: Nanoc::Core::LayoutCollectionView.new(site.layouts, self), config: Nanoc::Core::ConfigView.new(site.config, self), ) end