class RuboCop::Cop::Naming::VariableNumber


expect(Open3).to receive(:capture3)
# good
@example AllowedIdentifiers: [capture3]
:some_sym_1
# good
@example CheckSymbols: false
:some_sym_1
# bad
@example CheckSymbols: true (default)
def some_method_1; end
# good
@example CheckMethodNames: false
def some_method_1; end
# bad
@example CheckMethodNames: true (default)
# In the following examples, we assume ‘EnforcedStyle: normalcase` (default).
def some_methodone(arg_one); end
def some_methodone(argone); end
def some_method_one; end
def some_methodone; end
variable_one = 1
variableone = 1
:some_sym_one
:some_symone
# good
def some_methodone(arg_1); end
def some_methodone(arg1); end
def some_method_1; end
def some_method1; end
variable_1 = 1
variable1 = 1
:some_sym_1
:some_sym1
# bad
@example EnforcedStyle: non_integer
def some_method1(arg1); end
def some_method1; end
variable1 = 1
:some_sym1
# good
def some_method1(arg_1); end
def some_method_1; end
variable_1 = 1
:some_sym_1
# bad
@example EnforcedStyle: normalcase (default)
def some_method_1(arg_1); end
def some_method_1; end
variable_1 = 1
:some_sym_1
# good
def some_method_1(arg1); end
def some_method1; end
variable1 = 1
:some_sym1
# bad
@example EnforcedStyle: snake_case
Both are enabled by default.
can be used to specify whether method names and symbols should be checked.
Additionally, `CheckMethodNames` and `CheckSymbols` configuration options
for their numbering.
configured style, snake_case, normalcase, or non_integer,
This cop makes sure that all numbered variables use the

def message(style)

def message(style)
  identifier_type =
    case @node.type
    when :def, :defs then 'method name'
    when :sym        then 'symbol'
    else                  'variable'
    end
  format(MSG, style: style, identifier_type: identifier_type)
end

def on_arg(node)

def on_arg(node)
  @node = node
  name, = *node
  return if allowed_identifier?(name)
  check_name(node, name, node.loc.name)
end

def on_def(node)

def on_def(node)
  @node = node
  return if allowed_identifier?(node.method_name)
  check_name(node, node.method_name, node.loc.name) if cop_config['CheckMethodNames']
end

def on_sym(node)

def on_sym(node)
  @node = node
  return if allowed_identifier?(node.value)
  check_name(node, node.value, node) if cop_config['CheckSymbols']
end