class Ikra::AST::HostSectionBuilder
Protected Instance Methods
translate_arg(node)
click to toggle source
# File lib/ast/host_section_builder.rb, line 33 def translate_arg(node) return node.children.first end
translate_args(node)
click to toggle source
# File lib/ast/host_section_builder.rb, line 29 def translate_args(node) return translate_node(node.children) end
translate_block(node)
click to toggle source
# File lib/ast/host_section_builder.rb, line 7 def translate_block(node) if node.children[0].type != :send raise AssertionError.new("Unknown AST construct: Send node expected") end send_node = node.children[0] built_block_node = BlockDefNode.new( body: translate_node(node.children[2]), parameters: translate_node(node.children[1]), ruby_block: nil) if send_node.children[0] == nil && send_node.children[1] == :proc # Defining a stand-alone block return built_block_node else # Block should be part of a message send built_send_node = translate_node(send_node) built_send_node.block_argument = built_block_node return built_send_node end end