static PassRefPtr<ScriptCallStack> createScriptCallStack(v8::Handle<v8::StackTrace> stackTrace, size_t maxStackSize, bool emptyStackIsAllowed) { ASSERT(v8::Context::InContext()); v8::HandleScope scope; Vector<ScriptCallFrame> scriptCallFrames; toScriptCallFramesVector(stackTrace, scriptCallFrames, maxStackSize, emptyStackIsAllowed); return ScriptCallStack::create(scriptCallFrames); }
static PassRefPtr<ScriptCallStack> createScriptCallStack(v8::Handle<v8::StackTrace> stackTrace, size_t maxStackSize, bool emptyStackIsAllowed, v8::Isolate* isolate) { ASSERT(isolate->InContext()); v8::HandleScope scope(isolate); Vector<ScriptCallFrame> scriptCallFrames; toScriptCallFramesVector(stackTrace, scriptCallFrames, maxStackSize, emptyStackIsAllowed, isolate); RefPtr<ScriptCallStack> callStack = ScriptCallStack::create(scriptCallFrames); return callStack.release(); }
static PassRefPtrWillBeRawPtr<ScriptCallStack> createScriptCallStack(v8::Isolate* isolate, v8::Handle<v8::StackTrace> stackTrace, size_t maxStackSize, bool emptyStackIsAllowed) { ASSERT(isolate->InContext()); v8::HandleScope scope(isolate); Vector<ScriptCallFrame> scriptCallFrames; toScriptCallFramesVector(stackTrace, scriptCallFrames, maxStackSize, emptyStackIsAllowed, isolate); RefPtrWillBeRawPtr<ScriptCallStack> callStack = ScriptCallStack::create(scriptCallFrames); if (InspectorInstrumentation::hasFrontends() && maxStackSize > 1) InspectorInstrumentation::appendAsyncCallStack(currentExecutionContext(isolate), callStack.get()); return callStack.release(); }