Method: BetterHtml::TestHelper::RubyNode#return_values
- Defined in:
- lib/better_html/test_helper/ruby_node.rb
#return_values ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/better_html/test_helper/ruby_node.rb', line 51 def return_values Enumerator.new do |yielder| case type when :send, :csend, :ivar, *STATIC_TYPES yielder.yield(self) when :if, :masgn, :lvasgn # first child is ignored as it does not contain return values # for example, in `foo ? x : y` we only care about x and y, not foo children[1..-1].each do |child| child.return_values.each { |v| yielder.yield(v) } if node?(child) end else child_nodes.each do |child| child.return_values.each { |v| yielder.yield(v) } end end end end |