Sha256: 582a1fc4a06855748277b11670eb40dc3d353be6e50bce1d891251e5a6f1c063
Contents?: true
Size: 669 Bytes
Versions: 1
Compression:
Stored size: 669 Bytes
Contents
class MethodArgumentsCounter def initialize reset! end def count(args_add_block_sexp) reset! @count += args_add_block_sexp[1].size @count += 1 if args_add_block_sexp.last == true bypass_sexp(args_add_block_sexp) return [@count, @lines.uniq.sort.first] end def reset! @count = 0 @lines = [] end private def bypass_sexp(args_add_block_sexp) args_add_block_sexp.each do |sexp| next unless sexp.kind_of?(Array) case sexp.first when :bare_assoc_hash @count += sexp[1].size - 1 when :@int, :@ident @lines << sexp.last.first end bypass_sexp(sexp) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sandi_meter-0.0.1 | lib/method_arguments_counter.rb |