module MimiCheck::TailCallOptimization
Public Instance Methods
tail_recursive(name)
click to toggle source
# File lib/mimicheck/tail_call_optimization.rb, line 5 def tail_recursive(name) fn = instance_method(name) RubyVM::InstructionSequence.compile_option = { tailcall_optimization: true, trace_instruction: false } iseq = RubyVM::InstructionSequence.new(<<-EOS) class #{self} #{fn.source} end EOS iseq.eval iseq.disasm end