Sha256: 76f1f98e53b387ec5715744823cada2e5495d29d5d240f7ff3772ec2668d9215

Contents?: true

Size: 746 Bytes

Versions: 10

Compression:

Stored size: 746 Bytes

Contents

# Copyright (c) 2020 Jerome Arbez-Gindre
# frozen_string_literal: true

module DefMastership
  # Change references from temporary to definitive with multiple RefChangers
  class ModifierBase
    attr_reader :config, :changes

    def initialize(config)
      @config = config
      @changes = []
    end

    def do_modifications(adoc_texts)
      line_modifier = new_line_modifier(@config, adoc_texts)

      adoc_texts =
        replacements.reduce(adoc_texts) do |texts, method|
          texts.transform_values do |text|
            text.lines.map { |line| line_modifier.public_send(method, line) }.join
          end
        end

      @config = line_modifier.config
      @changes = line_modifier.changes
      adoc_texts
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
defmastership-1.0.16 lib/defmastership/modifier_base.rb
defmastership-1.0.15 lib/defmastership/modifier_base.rb
defmastership-1.0.14 lib/defmastership/modifier_base.rb
defmastership-1.0.13 lib/defmastership/modifier_base.rb
defmastership-1.0.12 lib/defmastership/modifier_base.rb
defmastership-1.0.11 lib/defmastership/modifier_base.rb
defmastership-1.0.10 lib/defmastership/modifier_base.rb
defmastership-1.0.9 lib/defmastership/modifier_base.rb
defmastership-1.0.8 lib/defmastership/modifier_base.rb
defmastership-1.0.7 lib/defmastership/modifier_base.rb