def add_variable(variable, scope = current_scope)
      if variable_stack.empty?
        scope.add(variable.type, variable.name, variable)
      else
        variable_stack.push(variable)
      end
    end
def add_variable(variable, scope = current_scope)
      if variable_stack.empty?
        scope.add(variable.type, variable.name, variable)
      else
        variable_stack.push(variable)
      end
    end
Adds a variable to the current scope of, if a the variable stack is not
 empty, add it to the stack instead.

 @param [RubyLint::Definition::RubyObject] variable
 @param [RubyLint::Definition::RubyObject] scope