Class: Thor::Actions::Directory
- Defined in:
- lib/thor/actions/directory.rb
Overview
:nodoc:
Instance Attribute Summary collapse
-
#recursive ⇒ Object
readonly
Returns the value of attribute recursive.
Attributes inherited from Templater
#base, #destination, #given_destination, #relative_destination, #source
Instance Method Summary collapse
-
#initialize(base, source, destination = nil, recursive = true, log_status = true) ⇒ Directory
constructor
A new instance of Directory.
- #invoke! ⇒ Object
Methods inherited from Templater
#exists?, #identical?, #revoke!
Constructor Details
#initialize(base, source, destination = nil, recursive = true, log_status = true) ⇒ Directory
Returns a new instance of Directory.
50 51 52 53 |
# File 'lib/thor/actions/directory.rb', line 50 def initialize(base, source, destination=nil, recursive=true, log_status=true) @recursive = recursive super(base, source, destination, log_status) end |
Instance Attribute Details
#recursive ⇒ Object (readonly)
Returns the value of attribute recursive.
48 49 50 |
# File 'lib/thor/actions/directory.rb', line 48 def recursive @recursive end |
Instance Method Details
#invoke! ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/thor/actions/directory.rb', line 55 def invoke! base.empty_directory given_destination lookup = recursive ? File.join(source, '**', '*') : File.join(source, '*') Dir[lookup].each do |file_source| file_destination = File.join(given_destination, file_source.gsub(source, '.')) if File.directory?(file_source) base.empty_directory(file_destination, @log_status) if recursive elsif file_source !~ /\.empty_directory$/ if file_source =~ /\.tt$/ base.template(file_source, file_destination[0..-4], @log_status) else base.copy_file(file_source, file_destination, @log_status) end end end end |