本文整理汇总了C++中jsc::Handle::slot方法的典型用法代码示例。如果您正苦于以下问题:C++ Handle::slot方法的具体用法?C++ Handle::slot怎么用?C++ Handle::slot使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类jsc::Handle
的用法示例。
在下文中一共展示了Handle::slot方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
bool WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, JSC::SlotVisitor& visitor)
{
auto& wrapper = *JSC::jsCast<JSC::JSArrayBuffer*>(handle.slot()->asCell());
if (!wrapper.hasCustomProperties())
return false;
return visitor.containsOpaqueRoot(wrapper.impl());
}
示例2: finalize
void JSTestNondeterministicOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
JSTestNondeterministic* jsTestNondeterministic = jsCast<JSTestNondeterministic*>(handle.slot()->asCell());
DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestNondeterministic->impl(), jsTestNondeterministic);
jsTestNondeterministic->releaseImpl();
}
示例3: uncacheWrapper
void WebCoreTypedArrayController::JSArrayBufferOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
auto& wrapper = *static_cast<JSC::JSArrayBuffer*>(handle.slot()->asCell());
auto& buffer = *wrapper.impl();
uncacheWrapper(*static_cast<DOMWrapperWorld*>(context), &buffer, &wrapper);
buffer.deref();
}
示例4: finalize
void JSTestExceptionOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
JSTestException* jsTestException = jsCast<JSTestException*>(handle.slot()->asCell());
DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestException->impl(), jsTestException);
jsTestException->releaseImpl();
}
示例5: finalize
void JSTestTypedefsOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
auto* jsTestTypedefs = jsCast<JSTestTypedefs*>(handle.slot()->asCell());
auto& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestTypedefs->impl(), jsTestTypedefs);
jsTestTypedefs->releaseImpl();
}
示例6: finalize
void JSCSSValueOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
JSCSSValue* jsCSSValue = jsCast<JSCSSValue*>(handle.slot()->asCell());
DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);
world.m_cssValueRoots.remove(&jsCSSValue->wrapped());
uncacheWrapper(world, &jsCSSValue->wrapped(), jsCSSValue);
}
示例7: finalize
void JSTestCustomNamedGetterOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
auto* jsTestCustomNamedGetter = jsCast<JSTestCustomNamedGetter*>(handle.slot()->asCell());
auto& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestCustomNamedGetter->impl(), jsTestCustomNamedGetter);
jsTestCustomNamedGetter->releaseImpl();
}
示例8: finalize
void JSTestActiveDOMObjectOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
JSTestActiveDOMObject* jsTestActiveDOMObject = jsCast<JSTestActiveDOMObject*>(handle.slot()->asCell());
DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestActiveDOMObject->impl(), jsTestActiveDOMObject);
jsTestActiveDOMObject->releaseImpl();
}
示例9: finalize
void JSTestEventConstructorOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
{
JSTestEventConstructor* jsTestEventConstructor = jsCast<JSTestEventConstructor*>(handle.slot()->asCell());
DOMWrapperWorld& world = *static_cast<DOMWrapperWorld*>(context);
uncacheWrapper(world, &jsTestEventConstructor->impl(), jsTestEventConstructor);
jsTestEventConstructor->releaseImpl();
}
示例10: isReachableFromOpaqueRoots
bool JSTestInterfaceOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor)
{
auto* jsTestInterface = jsCast<JSTestInterface*>(handle.slot()->asCell());
if (jsTestInterface->wrapped().hasPendingActivity())
return true;
UNUSED_PARAM(visitor);
return false;
}
示例11: isReachableFromOpaqueRoots
bool JSTestNamedConstructorOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor)
{
JSTestNamedConstructor* jsTestNamedConstructor = jsCast<JSTestNamedConstructor*>(handle.slot()->asCell());
if (jsTestNamedConstructor->impl().hasPendingActivity())
return true;
UNUSED_PARAM(visitor);
return false;
}
示例12: isReachableFromOpaqueRoots
bool JSTestEventTargetOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor)
{
auto* jsTestEventTarget = jsCast<JSTestEventTarget*>(handle.slot()->asCell());
if (jsTestEventTarget->impl().isFiringEventListeners())
return true;
UNUSED_PARAM(visitor);
return false;
}
示例13: finalize
void RootObject::finalize(JSC::Handle<JSC::Unknown> handle, void*)
{
RuntimeObject* object = static_cast<RuntimeObject*>(handle.slot()->asCell());
Ref<RootObject> protectedThis(*this);
object->invalidate();
weakRemove(m_runtimeObjects, object, object);
}
示例14: isReachableFromOpaqueRoots
bool JSMutationObserverOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, SlotVisitor& visitor)
{
for (auto* node : jsCast<JSMutationObserver*>(handle.slot()->asCell())->wrapped().observedNodes()) {
if (visitor.containsOpaqueRoot(root(node)))
return true;
}
return false;
}
示例15: finalize
void JSAPIWrapperObjectHandleOwner::finalize(JSC::Handle<JSC::Unknown> handle, void*)
{
auto* wrapperObject = static_cast<JSC::JSAPIWrapperObject*>(handle.get().asCell());
if (!wrapperObject->wrappedObject())
return;
JSC::Heap::heap(wrapperObject)->releaseSoon(std::unique_ptr<JSC::JSCGLibWrapperObject>(static_cast<JSC::JSCGLibWrapperObject*>(wrapperObject->wrappedObject())));
JSC::WeakSet::deallocate(JSC::WeakImpl::asWeakImpl(handle.slot()));
}