module RuboCop::SketchUp::ToolChecker
Public Instance Methods
on_class(node)
click to toggle source
# File lib/rubocop/sketchup/tool_checker.rb, line 7 def on_class(node) name, _base_class, body = *node return unless name.const_name.end_with?('Tool') check_body(body, node) end
Private Instance Methods
body_methods(body)
click to toggle source
rubocop:enable Lint/UnusedMethodArgument
# File lib/rubocop/sketchup/tool_checker.rb, line 22 def body_methods(body) return [body] if body.def_type? return unless body.begin_type? body.each_child_node(:def) end
check_body(body, class_node)
click to toggle source
# File lib/rubocop/sketchup/tool_checker.rb, line 29 def check_body(body, class_node) return if body.nil? # Empty class etc. body_methods = body_methods(body) on_tool_class(class_node, body_methods) end
find_method(defs, method_name)
click to toggle source
# File lib/rubocop/sketchup/tool_checker.rb, line 37 def find_method(defs, method_name) defs.find { |def_node| def_node.method?(method_name) } end
on_tool_class(class_node, body, body_methods)
click to toggle source
rubocop:disable Lint/UnusedMethodArgument
# File lib/rubocop/sketchup/tool_checker.rb, line 17 def on_tool_class(class_node, body, body_methods) raise NotImplementedError, 'Implement this method' end