class Confinement::Rendering::RenderChain

Public Class Methods

new(body:, path:, renderers:, view_context:) click to toggle source
# File lib/confinement.rb, line 617
def initialize(body:, path:, renderers:, view_context:)
  @body = body
  @path = path
  @renderers = renderers
  @view_context = view_context
end

Public Instance Methods

call(&block) click to toggle source
# File lib/confinement.rb, line 624
def call(&block)
  @renderers.reduce(@body) do |memo, renderer|
    renderer.call(memo, @view_context, path: @path, &block)
  end
end