Class: Templatecop::RubyOffenseCollector

Inherits:
Object
  • Object
show all
Defined in:
lib/templatecop/ruby_offense_collector.rb

Overview

Collect RuboCop offenses from Ruby code.

Instance Method Summary collapse

Constructor Details

#initialize(auto_correct:, file_path:, rubocop_config:, source:) ⇒ RubyOffenseCollector

Returns a new instance of RubyOffenseCollector.

Parameters:

  • auto_correct (Boolean)
  • file_path (String)
  • rubocop_config (RuboCop::Config)
  • source (String)


12
13
14
15
16
17
# File 'lib/templatecop/ruby_offense_collector.rb', line 12

def initialize(auto_correct:, file_path:, rubocop_config:, source:)
  @auto_correct = auto_correct
  @file_path = file_path
  @rubocop_config = rubocop_config
  @source = source
end

Instance Method Details

#callArray<RuboCop::Cop::Offense>

Returns:

  • (Array<RuboCop::Cop::Offense>)


20
21
22
23
24
25
# File 'lib/templatecop/ruby_offense_collector.rb', line 20

def call
  # Skip if invalid syntax Ruby code is given. (e.g. "- if a?")
  return [] unless rubocop_processed_source.valid_syntax?

  rubocop_team.investigate(rubocop_processed_source).offenses.reject(&:disabled?)
end