Sha256: 50aab9f246d456506d02219a92a0b8494561c9b6c0ff0f4d517fd4d8dcf79e22

Contents?: true

Size: 850 Bytes

Versions: 18

Compression:

Stored size: 850 Bytes

Contents

# frozen_string_literal: true

module Nanoc::Int::Compiler::Stages
  class StorePreCompilationState < Nanoc::Int::Compiler::Stage
    include Nanoc::Int::ContractsSupport

    def initialize(reps:, layouts:, checksum_store:, action_sequence_store:, action_sequences:)
      @reps = reps
      @layouts = layouts
      @checksum_store = checksum_store
      @action_sequence_store = action_sequence_store
      @action_sequences = action_sequences
    end

    contract Nanoc::Int::ChecksumCollection => C::Any
    def run(checksums)
      # Calculate action sequence
      (@reps.to_a + @layouts.to_a).each do |obj|
        @action_sequence_store[obj] = @action_sequences[obj].serialize
      end
      @action_sequence_store.store

      # Set checksums
      @checksum_store.checksums = checksums.to_h
      @checksum_store.store
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
nanoc-4.11.0 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.10.4 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.10.3 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.10.2 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.10.1 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.10.0 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.9 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.8 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.7 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.6 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.5 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.4 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.3 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.2 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.1 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.9.0 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.19 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.18 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb