Class: VisualizeRuby::Parser::Block

Inherits:
Base
  • Object
show all
Defined in:
lib/visualize_ruby/parser/block.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from VisualizeRuby::Parser::Base

Instance Method Details

#parseArray<VisualizeRuby::Node>, Array<VisualizeRuby::Edge>

Returns:



5
6
7
8
9
10
11
12
13
14
15
# File 'lib/visualize_ruby/parser/block.rb', line 5

def parse
  iterator, arguments, action = @ast.children
  item                        = arguments.children[0]
  collection, iterator_type   = iterator.to_a
  if enumerable?(collection) || enumerable?(iterator_type)
    enumerable(action, collection, iterator_type, item)
  else
    yield_block(action, item, iterator)
  end
  return nodes, edges
end