本文整理汇总了C++中CFXJSE_Value::GetIsolate方法的典型用法代码示例。如果您正苦于以下问题:C++ CFXJSE_Value::GetIsolate方法的具体用法?C++ CFXJSE_Value::GetIsolate怎么用?C++ CFXJSE_Value::GetIsolate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CFXJSE_Value
的用法示例。
在下文中一共展示了CFXJSE_Value::GetIsolate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: FXJSE_DynPropGetterAdapter
static void FXJSE_DynPropGetterAdapter(const FXJSE_CLASS* lpClass,
FXJSE_HOBJECT hObject,
const CFX_ByteStringC& szPropName,
FXJSE_HVALUE hValue) {
ASSERT(lpClass);
int32_t nPropType =
lpClass->dynPropTypeGetter == nullptr
? FXJSE_ClassPropType_Property
: lpClass->dynPropTypeGetter(hObject, szPropName, FALSE);
if (nPropType == FXJSE_ClassPropType_Property) {
if (lpClass->dynPropGetter) {
lpClass->dynPropGetter(hObject, szPropName, hValue);
}
} else if (nPropType == FXJSE_ClassPropType_Method) {
if (lpClass->dynMethodCall && hValue) {
CFXJSE_Value* lpValue = reinterpret_cast<CFXJSE_Value*>(hValue);
v8::Isolate* pIsolate = lpValue->GetIsolate();
v8::HandleScope hscope(pIsolate);
v8::Local<v8::ObjectTemplate> hCallBackInfoTemplate =
v8::ObjectTemplate::New();
hCallBackInfoTemplate->SetInternalFieldCount(2);
v8::Local<v8::Object> hCallBackInfo =
hCallBackInfoTemplate->NewInstance();
hCallBackInfo->SetAlignedPointerInInternalField(
0, const_cast<FXJSE_CLASS*>(lpClass));
hCallBackInfo->SetInternalField(
1, v8::String::NewFromUtf8(
pIsolate, reinterpret_cast<const char*>(szPropName.GetPtr()),
v8::String::kNormalString, szPropName.GetLength()));
lpValue->ForceSetValue(v8::Function::New(
lpValue->GetIsolate(), FXJSE_DynPropGetterAdapter_MethodCallback,
hCallBackInfo));
}
}
}
示例2: FXJSE_Value_GetRuntime
FXJSE_HRUNTIME FXJSE_Value_GetRuntime(FXJSE_HVALUE hValue) {
CFXJSE_Value* lpValue = reinterpret_cast<CFXJSE_Value*>(hValue);
ASSERT(lpValue);
return reinterpret_cast<FXJSE_HRUNTIME>(lpValue->GetIsolate());
}