Class: InstanceVariableLimit

Inherits:
Object
  • Object
show all
Defined in:
lib/rules/instance_variable_limit.rb

Instance Method Summary collapse

Constructor Details

#initialize(max) ⇒ InstanceVariableLimit

Returns a new instance of InstanceVariableLimit.



3
4
5
# File 'lib/rules/instance_variable_limit.rb', line 3

def initialize(max)
  @max = max
end

Instance Method Details

#messageObject



12
13
14
# File 'lib/rules/instance_variable_limit.rb', line 12

def message
  "has more than #{@max} instance variables"
end

#valid?(code) ⇒ Boolean

Returns:

  • (Boolean)


7
8
9
10
# File 'lib/rules/instance_variable_limit.rb', line 7

def valid?(code)
  class_structure = ClassStructure.new(code)
  class_structure.instance_variables.size <= @max
end