Class: Duby::AST::JRubyAst::RescueBodyNode

Inherits:
Object
  • Object
show all
Defined in:
lib/duby/transform.rb

Instance Method Summary collapse

Instance Method Details

#transform(transformer, parent) ⇒ Object



653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
# File 'lib/duby/transform.rb', line 653

def transform(transformer, parent)
  children = if opt_rescue_node
    transformer.transform(opt_rescue_node, parent)
  else
    []
  end
  [
    RescueClause.new(parent, position) do |clause|
      exceptions = if exception_nodes
        exception_nodes.map {|e| e.type_reference(clause)}
      else
        [AST.type('java.lang.Exception')]
      end
      [
        exceptions,
        transformer.transform(body_node, clause)
      ]
    end,
    *children
  ]
end