void CallFrame::dump() { VM* vm = VM::current(); State state_obj(vm), *state = &state_obj; std::cout << "<CallFrame:" << (void*)this << " "; if(native_method_p()) { std::cout << "capi>\n"; return; } if(is_inline_frame()) { std::cout << "inline "; } if(is_block_p(state)) { std::cout << "block "; } else if(dispatch_data) { std::cout << "name=" << name()->debug_str(state) << " "; } else { std::cout << "name=" << compiled_code->name()->debug_str(state) << " "; } std::cout << "ip=" << ip_ << " "; std::cout << "line=" << line(state); std::cout << ">\n"; }
NativeMethodFrame* native_method_frame() { if(native_method_p()) return reinterpret_cast<NativeMethodFrame*>(dispatch_data); return 0; }
NativeMethodFrame* native_method_frame() { if(native_method_p()) return (NativeMethodFrame*)dispatch_data; return 0; }