Sha256: 2d087fb37627f17d66ba175dfc9f0a27cb3fed7466326f0f58ec2802adf532e9
Contents?: true
Size: 604 Bytes
Versions: 3
Compression:
Stored size: 604 Bytes
Contents
module Parser module AST class Node def count_nodes_of_type(*types) count = 0 recursive_children do |child| count += 1 if types.include?(child.type) end count end def recursive_children children.each do |child| next unless child.is_a?(Parser::AST::Node) yield child child.recursive_children { |grand_child| yield grand_child } end end end end end module Rubycritic module AST class EmptyNode def count_nodes_of_type(*types) 0 end end end end
Version data entries
3 entries across 3 versions & 1 rubygems