Sha256: 9c58c2be8baeb3ab3885d24ed3d21d7a9520caa800c809b5648d3011731ef97e
Contents?: true
Size: 689 Bytes
Versions: 9
Compression:
Stored size: 689 Bytes
Contents
# frozen_string_literal: true require_relative '../ast/node' module Reek module Context # Responsible for counting the statements in a `CodeContext`. class StatementCounter attr_reader :value def initialize @value = 0 end def increase_by(sexp) return unless sexp case sexp when Reek::AST::Node self.value = value + 1 when Array self.value = value + sexp.length else raise ArgumentError, "Invalid type #{sexp} given" end end def decrease_by(number) self.value = value - number end private attr_writer :value end end end
Version data entries
9 entries across 9 versions & 1 rubygems