Sha256: 03cebbe1604cf6dfc231e6263ce567b44266261050e601460db928038d431423
Contents?: true
Size: 1.02 KB
Versions: 149
Compression:
Stored size: 1.02 KB
Contents
# frozen_string_literal: true module RuboCop module Cop # Common functionality for checking minimum branches count. module MinBranchesCount private def min_branches_count?(node) branches = if node.case_type? node.when_branches elsif node.if_type? if_conditional_branches(node) else raise ArgumentError, "Unsupported #{node.type.inspect} node type" end branches.size >= min_branches_count end def min_branches_count length = cop_config['MinBranchesCount'] || 3 return length if length.is_a?(Integer) && length.positive? raise 'MinBranchesCount needs to be a positive integer!' end def if_conditional_branches(node, branches = []) return [] if node.nil? || !node.if_type? branches << node.if_branch else_branch = node.else_branch if_conditional_branches(else_branch, branches) if else_branch&.if_type? branches end end end end
Version data entries
149 entries across 148 versions & 15 rubygems