Sha256: 08a51afc4eca4dd45ca5ca198ad68e2d00e88bba38d9d749bea682a32fdf6507
Contents?: true
Size: 654 Bytes
Versions: 3
Compression:
Stored size: 654 Bytes
Contents
module Xdrgen::AST module Declarations class Base < Treetop::Runtime::SyntaxNode TYPE_NODES = [ Typespecs::Base, Concerns::NestedDefinition, Concerns::Contained, ] def type search(type_s) do |node| TYPE_NODES.any?{|t| node.is_a?(t)} end end private def search(cur_el, &predicate) return cur_el if predicate.call(cur_el) return if cur_el.elements.blank? cur_el.elements.each do |next_el| child_result = search(next_el, &predicate) return child_result if child_result.present? end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
xdrgen-0.1.1 | lib/xdrgen/ast/declarations/base.rb |
xdrgen-0.1.0 | lib/xdrgen/ast/declarations/base.rb |
xdrgen-0.0.1 | lib/xdrgen/ast/declarations/base.rb |