本文整理汇总了C++中ProxyObject::private_方法的典型用法代码示例。如果您正苦于以下问题:C++ ProxyObject::private_方法的具体用法?C++ ProxyObject::private_怎么用?C++ ProxyObject::private_使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ProxyObject
的用法示例。
在下文中一共展示了ProxyObject::private_方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: MarkValueRoot
/*
* This method marks pointers that cross compartment boundaries. It should be
* called only for per-compartment GCs, since full GCs naturally follow pointers
* across compartments.
*/
void
JSCompartment::markCrossCompartmentWrappers(JSTracer *trc)
{
JS_ASSERT(!zone()->isCollecting());
for (WrapperMap::Enum e(crossCompartmentWrappers); !e.empty(); e.popFront()) {
Value v = e.front().value();
if (e.front().key().kind == CrossCompartmentKey::ObjectWrapper) {
ProxyObject *wrapper = &v.toObject().as<ProxyObject>();
/*
* We have a cross-compartment wrapper. Its private pointer may
* point into the compartment being collected, so we should mark it.
*/
Value referent = wrapper->private_();
MarkValueRoot(trc, &referent, "cross-compartment wrapper");
JS_ASSERT(referent == wrapper->private_());
}
}
}