Method: Thor::Actions::InjectIntoFile#initialize

Defined in:
lib/thor/actions/inject_into_file.rb

#initialize(base, destination, data, config) ⇒ InjectIntoFile

Returns a new instance of InjectIntoFile.



34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/thor/actions/inject_into_file.rb', line 34

def initialize(base, destination, data, config)
  super(base, destination, {:verbose => true}.merge(config))

  @behavior, @flag = if @config.key?(:after)
    [:after, @config.delete(:after)]
  else
    [:before, @config.delete(:before)]
  end

  @replacement = data.is_a?(Proc) ? data.call : data
  @flag = Regexp.escape(@flag) unless @flag.is_a?(Regexp)
end