Class: ClassMetrix::MethodsExtractor

Inherits:
Object
  • Object
show all
Defined in:
lib/class_metrix/extractors/methods_extractor.rb

Instance Method Summary collapse

Constructor Details

#initialize(classes, filters, handle_errors, options = {}) ⇒ MethodsExtractor

Returns a new instance of MethodsExtractor.



7
8
9
10
11
12
# File 'lib/class_metrix/extractors/methods_extractor.rb', line 7

def initialize(classes, filters, handle_errors, options = {})
  @classes = classes
  @filters = filters
  @handle_errors = handle_errors
  @options = default_options.merge(options)
end

Instance Method Details

#extractObject



14
15
16
17
18
19
20
21
22
23
# File 'lib/class_metrix/extractors/methods_extractor.rb', line 14

def extract
  return { headers: [], rows: [] } if @classes.empty?

  method_names = get_all_class_method_names
  method_names = apply_filters(method_names)
  headers = build_headers
  rows = build_rows(method_names)

  { headers: headers, rows: rows }
end