Follow the Brass

lib/halted_run.rb

16 lines · ruby

Project files
# frozen_string_literal: true

HaltedRun = Data.define(
  :faults, :positions, :recovery_plan, :wrong_context, :foreign, :rejected
) do
  def initialize(faults:, positions:, recovery_plan:, wrong_context:, foreign:, rejected:)
    super(faults: faults.dup.freeze, positions: positions.dup.freeze,
          recovery_plan: recovery_plan.dup.freeze,
          wrong_context: wrong_context.dup.freeze, foreign: foreign.dup.freeze,
          rejected: rejected.dup.freeze)
  end

  def halted?
    true
  end
end

Read along in the manual: The Reloading Lab · Download the project (zip)