Method: Thor::Actions#inject_into_class
- Defined in:
- lib/wip/vendor/thor/actions/file_manipulation.rb
#inject_into_class(path, klass, *args, &block) ⇒ Object
Injects text right after the class definition. Since it depends on inject_into_file, it’s reversible.
Parameters
- path<String>
-
path of the file to be changed
- klass<String|Class>
-
the class to be manipulated
- data<String>
-
the data to append to the class, can be also given as a block.
- config<Hash>
-
give :verbose => false to not log the status.
Examples
inject_into_class "app/controllers/application_controller.rb", " filter_parameter :password\n"
inject_into_class "app/controllers/application_controller.rb", ApplicationController do
" filter_parameter :password\n"
end
172 173 174 175 176 |
# File 'lib/wip/vendor/thor/actions/file_manipulation.rb', line 172 def inject_into_class(path, klass, *args, &block) config = args.last.is_a?(Hash) ? args.pop : {} config.merge!(:after => /class #{klass}\n|class #{klass} .*\n/) inject_into_file(path, *(args << config), &block) end |