Sha256: 1877c3dac7e49c16683664ec0047a452e6f2728e9d5c12b7026ecd5b3c3fd2dc

Contents?: true

Size: 588 Bytes

Versions: 2

Compression:

Stored size: 588 Bytes

Contents

# frozen_string_literal: true

require "refinements/pathname"

module Tocer
  # Generates/updates Table of Contents for files in root path.
  class Runner
    include Dependencies[:settings, :io]

    using Refinements::Pathname

    def initialize(writer: Writer.new, **)
      super(**)
      @writer = writer
    end

    def call
      settings.root_dir
              .files(%({#{settings.patterns.join ","}}))
              .each do |path|
                io.puts "  #{path}"
                writer.call path
              end
    end

    private

    attr_reader :writer
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tocer-19.1.0 lib/tocer/runner.rb
tocer-19.0.0 lib/tocer/runner.rb