Module: Generator::FileWriter
- Included in:
- API, Entrypoint, Feed, Notification, RBS::Entrypoint, RBS::Types, RBS::Unified, Report, Type
- Defined in:
- lib/generator/support/file_writer.rb
Instance Method Summary collapse
-
#format_files(files) ⇒ Object
Batch format files with RuboCop and sort RBS files.
- #write_file(file_path, content) ⇒ Object
Instance Method Details
#format_files(files) ⇒ Object
Batch format files with RuboCop and sort RBS files
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/generator/support/file_writer.rb', line 18 def format_files(files) # Separate Ruby files from RBS files ruby_files = files.reject { |f| f.end_with?(".rbs") } rbs_files = files.select { |f| f.end_with?(".rbs") } # Format Ruby files with RuboCop ruby_files.each_slice(100) do |batch| next if batch.empty? system( "bundle", "exec", "rubocop", "--format", "simple", "--autocorrect-all", "--fail-level", "E", *batch, out: File::NULL, err: File::NULL, ) || raise("Couldn't format files") end # Sort RBS files rbs_files.each do |file_path| sort_rbs_file(file_path) end end |
#write_file(file_path, content) ⇒ Object
11 12 13 14 15 |
# File 'lib/generator/support/file_writer.rb', line 11 def write_file(file_path, content) FileUtils.mkdir_p(File.dirname(file_path)) File.write(file_path, content) file_path end |