class SyntaxTree::YARV::VM::STDOUTEvents

This is a simple implementation of tracing that prints to STDOUT.

def initialize

def initialize
  @disassembler = Disassembler.new
end

def publish_frame_change(frame)

def publish_frame_change(frame)
  puts "%-16s %s" % ["frame-change", "#{frame.iseq.file}@#{frame.line}"]
end

def publish_instruction(iseq, insn)

def publish_instruction(iseq, insn)
  disassembler.current_iseq = iseq
  puts "%-16s %s" % ["instruction", insn.disasm(disassembler)]
end

def publish_stack_change(stack)

def publish_stack_change(stack)
  puts "%-16s %s" % ["stack-change", stack.values.inspect]
end

def publish_tracepoint(event)

def publish_tracepoint(event)
  puts "%-16s %s" % ["tracepoint", event.inspect]
end