module RuboCop::Cop::VisibilityHelp
Help methods for determining node visibility.
Constants
- VISIBILITY_SCOPES
Private Instance Methods
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 48 def find_visibility_end(node) possible_visibilities = VISIBILITY_SCOPES - ::Set[node_visibility(node)] right = node.right_siblings right.find do |child_node| possible_visibilities.include?(node_visibility(child_node)) end || right.last end
Navigate to find the last protected method
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 43 def find_visibility_start(node) node.left_siblings.reverse.find { |sibling| visibility_block?(sibling) } end
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 15 def node_visibility(node) node_visibility_from_visibility_inline(node) || node_visibility_from_visibility_block(node) || :public end
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 39 def node_visibility_from_visibility_block(node) find_visibility_start(node)&.method_name end
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 21 def node_visibility_from_visibility_inline(node) return unless node.def_type? node_visibility_from_visibility_inline_on_def(node) || node_visibility_from_visibility_inline_on_method_name(node) end
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 28 def node_visibility_from_visibility_inline_on_def(node) parent = node.parent parent.method_name if visibility_inline_on_def?(parent) end
Source
# File lib/rubocop/cop/mixin/visibility_help.rb, line 33 def node_visibility_from_visibility_inline_on_method_name(node) node.right_siblings.reverse.find do |sibling| visibility_inline_on_method_name?(sibling, method_name: node.method_name) end&.method_name end