Sha256: 36c8b004fa884757f2ccf1801736f8f13eb24e9076c158a27ac75f036aa43171
Contents?: true
Size: 1.02 KB
Versions: 9
Compression:
Stored size: 1.02 KB
Contents
# frozen_string_literal: true require 'eac_ruby_utils/core_ext' require 'ehbrs_ruby_utils/fs/selected/build_file' module EhbrsRubyUtils module Fs class Selected class Build DEFAULT_TARGET_BASENAME_PROC = proc { |path| path.basename.to_path } attr_reader :selected, :target_dir, :target_basename_proc def initialize(selected, target_dir, &target_basename_proc) @selected = selected @target_dir = target_dir.to_pathname @target_basename_proc = target_basename_proc.presence || DEFAULT_TARGET_BASENAME_PROC end def perform clear_target_dir link_selected_found end private def clear_target_dir target_dir.children.each do |c| c.unlink if c.symlink? && c.directory? end end def link_selected_found selected.found.each do |found| ::EhbrsRubyUtils::Fs::Selected::BuildFile.new(self, found).perform end end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems