Sha256: 61bf1d84f75d6796fc2aa14bb18a726ea7413e83f1de0a1205c4fc1a08563d69

Contents?: true

Size: 820 Bytes

Versions: 23

Compression:

Stored size: 820 Bytes

Contents

# frozen_string_literal: true

module Nanoc::Int::Compiler::Stages
  class StorePreCompilationState
    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

23 entries across 23 versions & 1 rubygems

Version Path
nanoc-4.8.17 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.16 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.15 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.14 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.13 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.12 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.11 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.10 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.9 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.8 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.7 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.6 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.5 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.4 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.3 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.2 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.1 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.8.0 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.7.14 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb
nanoc-4.7.13 lib/nanoc/base/services/compiler/stages/store_pre_compilation_state.rb