4444 end
4545
4646 add_callback :call_node , at : 'start' do |node |
47- if node . receiver . nil? && node . name == :include && definitions . current_node_type == "class" && !node . arguments . nil? && %i[ constant_read_node constant_path_node ] . include? ( node . arguments . arguments . first . type )
47+ if node . receiver . nil? && node . name == :include && definitions . current_node_type == "class" && !node . arguments . nil? && %i[
48+ constant_read_node constant_path_node
49+ ] . include? ( node . arguments . arguments . first . type )
50+
4851 definitions . add_include_module ( node . arguments . arguments . first . to_source )
4952 end
50- if node . receiver . nil? && node . name == :prepend && definitions . current_node_type == "class" && !node . arguments . nil? && %i[ constant_read_node constant_path_node ] . include? ( node . arguments . arguments . first . type )
53+ if node . receiver . nil? && node . name == :prepend && definitions . current_node_type == "class" && !node . arguments . nil? && %i[
54+ constant_read_node constant_path_node
55+ ] . include? ( node . arguments . arguments . first . type )
56+
5157 definitions . add_prepend_module ( node . arguments . arguments . first . to_source )
5258 end
53- if node . receiver . nil? && node . name == :extend && definitions . current_node_type == "class" && !node . arguments . nil? && %i[ constant_read_node constant_path_node ] . include? ( node . arguments . arguments . first . type )
59+ if node . receiver . nil? && node . name == :extend && definitions . current_node_type == "class" && !node . arguments . nil? && %i[
60+ constant_read_node constant_path_node
61+ ] . include? ( node . arguments . arguments . first . type )
62+
5463 definitions . add_extend_module ( node . arguments . arguments . first . to_source )
5564 end
5665 end
@@ -182,7 +191,7 @@ def find_classes_by_ancestor(superclass)
182191 end
183192
184193 def find_method_by_name ( name )
185- methods . find { |method_definition | method_definition . name == name }
194+ methods . find { |method_definition | method_definition . name == name }
186195 end
187196
188197 def full_name
@@ -259,7 +268,12 @@ def initialize
259268 end
260269
261270 def to_h
262- { modules : @modules . map ( &:to_h ) , classes : @classes . map ( &:to_h ) , constants : @constants , methods : @methods . map ( &:to_h ) }
271+ {
272+ modules : @modules . map ( &:to_h ) ,
273+ classes : @classes . map ( &:to_h ) ,
274+ constants : @constants ,
275+ methods : @methods . map ( &:to_h )
276+ }
263277 end
264278end
265279
@@ -286,14 +300,24 @@ def to_h
286300 methods : @methods . map ( &:to_h ) ,
287301 static_methods : @static_methods . map ( &:to_h ) ,
288302 constants : @constants ,
289- singleton : @singleton &.to_h ,
303+ singleton : @singleton &.to_h ,
290304 ancestors : @ancestors
291305 }
292306 end
293307end
294308
295309class ClassDefinition < BaseDefinition
296- attr_reader :parent , :name , :superclass , :modules , :classes , :methods , :static_methods , :constants , :include_modules , :prepend_modules , :extend_modules
310+ attr_reader :parent ,
311+ :name ,
312+ :superclass ,
313+ :modules ,
314+ :classes ,
315+ :methods ,
316+ :static_methods ,
317+ :constants ,
318+ :include_modules ,
319+ :prepend_modules ,
320+ :extend_modules
297321 attr_accessor :singleton , :ancestors
298322
299323 def initialize ( parent :, name :, superclass :)
@@ -360,11 +384,13 @@ def initialize(parent:, name:)
360384
361385 def call_method? ( method_name )
362386 local_calls . include? ( method_name ) ||
363- local_calls . any? { |local_call_method_name | parent . find_method_by_name ( local_call_method_name ) &.call_method? ( method_name ) }
387+ local_calls . any? { |local_call_method_name |
388+ parent . find_method_by_name ( local_call_method_name ) &.call_method? ( method_name )
389+ }
364390 end
365391
366392 def call_any_method? ( method_names )
367- method_names . any? { |method_name | call_method? ( method_name ) }
393+ method_names . any? { |method_name | call_method? ( method_name ) }
368394 end
369395
370396 def to_h
0 commit comments