Sha256: 225d30230fb6fcf6284d7356978f2189917deaa3ba7394599c80700a0d54e364

Contents?: true

Size: 811 Bytes

Versions: 7

Compression:

Stored size: 811 Bytes

Contents

# frozen_string_literal: true

module Nanoc::RuleDSL
  class RuleContext < Nanoc::Core::Context
    include Nanoc::Core::ContractsSupport

    contract C::KeywordArgs[
      rep: Nanoc::Core::ItemRep,
      site: Nanoc::Core::Site,
      view_context: Nanoc::ViewContextForPreCompilation,
    ] => C::Any
    def initialize(rep:, site:, view_context:)
      super({
        item: Nanoc::BasicItemView.new(rep.item, view_context),
        rep: Nanoc::BasicItemRepView.new(rep, view_context),
        item_rep: Nanoc::BasicItemRepView.new(rep, view_context),
        items: Nanoc::ItemCollectionWithoutRepsView.new(site.items, view_context),
        layouts: Nanoc::LayoutCollectionView.new(site.layouts, view_context),
        config: Nanoc::ConfigView.new(site.config, view_context),
      })
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
nanoc-4.11.11 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.10 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.9 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.8 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.7 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.6 lib/nanoc/rule_dsl/rule_context.rb
nanoc-4.11.5 lib/nanoc/rule_dsl/rule_context.rb