Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: fpdfsdk/src/javascript/JS_Define.h

Issue 1386173002: Rename IFXJS_Runtime and IFXJS_Context to IJS_. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Comment in fxjs_v8.h Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « fpdfsdk/src/javascript/JS_Context.h ('k') | fpdfsdk/src/javascript/JS_Object.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #ifndef FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_ 7 #ifndef FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_
8 #define FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_ 8 #define FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_
9 9
10 #include "../../include/jsapi/fxjs_v8.h" 10 #include "../../include/jsapi/fxjs_v8.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 JSMethodSpec js_class_name::JS_Class_Methods[] = { 64 JSMethodSpec js_class_name::JS_Class_Methods[] = {
65 #define JS_STATIC_METHOD_ENTRY(method_name) \ 65 #define JS_STATIC_METHOD_ENTRY(method_name) \
66 { JS_WIDESTRING(method_name), method_name##_static } \ 66 { JS_WIDESTRING(method_name), method_name##_static } \
67 , 67 ,
68 68
69 #define END_JS_STATIC_METHOD() \ 69 #define END_JS_STATIC_METHOD() \
70 { 0, 0 } \ 70 { 0, 0 } \
71 } \ 71 } \
72 ; 72 ;
73 73
74 template <class C, 74 template <
75 FX_BOOL (C::*M)(IFXJS_Context* cc, 75 class C,
76 CJS_PropValue& vp, 76 FX_BOOL (C::*M)(IJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError)>
77 CFX_WideString& sError)>
78 void JSPropGetter(const char* prop_name_string, 77 void JSPropGetter(const char* prop_name_string,
79 const char* class_name_string, 78 const char* class_name_string,
80 v8::Local<v8::String> property, 79 v8::Local<v8::String> property,
81 const v8::PropertyCallbackInfo<v8::Value>& info) { 80 const v8::PropertyCallbackInfo<v8::Value>& info) {
82 v8::Isolate* isolate = info.GetIsolate(); 81 v8::Isolate* isolate = info.GetIsolate();
83 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 82 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
84 if (!pRuntime) 83 if (!pRuntime)
85 return; 84 return;
86 IFXJS_Context* pContext = pRuntime->GetCurrentContext(); 85 IJS_Context* pContext = pRuntime->GetCurrentContext();
87 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder()); 86 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder());
88 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject()); 87 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject());
89 CFX_WideString sError; 88 CFX_WideString sError;
90 CJS_PropValue value(isolate); 89 CJS_PropValue value(isolate);
91 value.StartGetting(); 90 value.StartGetting();
92 if (!(pObj->*M)(pContext, value, sError)) { 91 if (!(pObj->*M)(pContext, value, sError)) {
93 FXJS_Error(isolate, JSFormatErrorString(class_name_string, prop_name_string, 92 FXJS_Error(isolate, JSFormatErrorString(class_name_string, prop_name_string,
94 sError)); 93 sError));
95 return; 94 return;
96 } 95 }
97 info.GetReturnValue().Set((v8::Local<v8::Value>)value); 96 info.GetReturnValue().Set((v8::Local<v8::Value>)value);
98 } 97 }
99 98
100 template <class C, 99 template <
101 FX_BOOL (C::*M)(IFXJS_Context* cc, 100 class C,
102 CJS_PropValue& vp, 101 FX_BOOL (C::*M)(IJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError)>
103 CFX_WideString& sError)>
104 void JSPropSetter(const char* prop_name_string, 102 void JSPropSetter(const char* prop_name_string,
105 const char* class_name_string, 103 const char* class_name_string,
106 v8::Local<v8::String> property, 104 v8::Local<v8::String> property,
107 v8::Local<v8::Value> value, 105 v8::Local<v8::Value> value,
108 const v8::PropertyCallbackInfo<void>& info) { 106 const v8::PropertyCallbackInfo<void>& info) {
109 v8::Isolate* isolate = info.GetIsolate(); 107 v8::Isolate* isolate = info.GetIsolate();
110 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 108 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
111 if (!pRuntime) 109 if (!pRuntime)
112 return; 110 return;
113 IFXJS_Context* pContext = pRuntime->GetCurrentContext(); 111 IJS_Context* pContext = pRuntime->GetCurrentContext();
114 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder()); 112 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder());
115 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject()); 113 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject());
116 CFX_WideString sError; 114 CFX_WideString sError;
117 CJS_PropValue propValue(CJS_Value(isolate, value, CJS_Value::VT_unknown)); 115 CJS_PropValue propValue(CJS_Value(isolate, value, CJS_Value::VT_unknown));
118 propValue.StartSetting(); 116 propValue.StartSetting();
119 if (!(pObj->*M)(pContext, propValue, sError)) { 117 if (!(pObj->*M)(pContext, propValue, sError)) {
120 FXJS_Error(isolate, JSFormatErrorString(class_name_string, prop_name_string, 118 FXJS_Error(isolate, JSFormatErrorString(class_name_string, prop_name_string,
121 sError)); 119 sError));
122 } 120 }
123 } 121 }
124 122
125 #define JS_STATIC_PROP(prop_name, class_name) \ 123 #define JS_STATIC_PROP(prop_name, class_name) \
126 static void get_##prop_name##_static( \ 124 static void get_##prop_name##_static( \
127 v8::Local<v8::String> property, \ 125 v8::Local<v8::String> property, \
128 const v8::PropertyCallbackInfo<v8::Value>& info) { \ 126 const v8::PropertyCallbackInfo<v8::Value>& info) { \
129 JSPropGetter<class_name, &class_name::prop_name>(#prop_name, #class_name, \ 127 JSPropGetter<class_name, &class_name::prop_name>(#prop_name, #class_name, \
130 property, info); \ 128 property, info); \
131 } \ 129 } \
132 static void set_##prop_name##_static( \ 130 static void set_##prop_name##_static( \
133 v8::Local<v8::String> property, v8::Local<v8::Value> value, \ 131 v8::Local<v8::String> property, v8::Local<v8::Value> value, \
134 const v8::PropertyCallbackInfo<void>& info) { \ 132 const v8::PropertyCallbackInfo<void>& info) { \
135 JSPropSetter<class_name, &class_name::prop_name>(#prop_name, #class_name, \ 133 JSPropSetter<class_name, &class_name::prop_name>(#prop_name, #class_name, \
136 property, value, info); \ 134 property, value, info); \
137 } 135 }
138 136
139 template <class C, 137 template <class C,
140 FX_BOOL (C::*M)(IFXJS_Context* cc, 138 FX_BOOL (C::*M)(IJS_Context* cc,
141 const CJS_Parameters& params, 139 const CJS_Parameters& params,
142 CJS_Value& vRet, 140 CJS_Value& vRet,
143 CFX_WideString& sError)> 141 CFX_WideString& sError)>
144 void JSMethod(const char* method_name_string, 142 void JSMethod(const char* method_name_string,
145 const char* class_name_string, 143 const char* class_name_string,
146 const v8::FunctionCallbackInfo<v8::Value>& info) { 144 const v8::FunctionCallbackInfo<v8::Value>& info) {
147 v8::Isolate* isolate = info.GetIsolate(); 145 v8::Isolate* isolate = info.GetIsolate();
148 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 146 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
149 if (!pRuntime) 147 if (!pRuntime)
150 return; 148 return;
151 IFXJS_Context* cc = pRuntime->GetCurrentContext(); 149 IJS_Context* cc = pRuntime->GetCurrentContext();
152 CJS_Parameters parameters; 150 CJS_Parameters parameters;
153 for (unsigned int i = 0; i < (unsigned int)info.Length(); i++) { 151 for (unsigned int i = 0; i < (unsigned int)info.Length(); i++) {
154 parameters.push_back(CJS_Value(isolate, info[i], CJS_Value::VT_unknown)); 152 parameters.push_back(CJS_Value(isolate, info[i], CJS_Value::VT_unknown));
155 } 153 }
156 CJS_Value valueRes(isolate); 154 CJS_Value valueRes(isolate);
157 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder()); 155 CJS_Object* pJSObj = (CJS_Object*)FXJS_GetPrivate(isolate, info.Holder());
158 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject()); 156 C* pObj = reinterpret_cast<C*>(pJSObj->GetEmbedObject());
159 CFX_WideString sError; 157 CFX_WideString sError;
160 if (!(pObj->*M)(cc, parameters, valueRes, sError)) { 158 if (!(pObj->*M)(cc, parameters, valueRes, sError)) {
161 FXJS_Error(isolate, JSFormatErrorString(class_name_string, 159 FXJS_Error(isolate, JSFormatErrorString(class_name_string,
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 IMPLEMENT_JS_CLASS_RICH_PART(js_class_name, class_alternate, class_name) \ 237 IMPLEMENT_JS_CLASS_RICH_PART(js_class_name, class_alternate, class_name) \
240 void js_class_name::DefineJSObjects(v8::Isolate* pIsolate, \ 238 void js_class_name::DefineJSObjects(v8::Isolate* pIsolate, \
241 FXJSOBJTYPE eObjType) { \ 239 FXJSOBJTYPE eObjType) { \
242 g_nObjDefnID = FXJS_DefineObj(pIsolate, js_class_name::g_pClassName, \ 240 g_nObjDefnID = FXJS_DefineObj(pIsolate, js_class_name::g_pClassName, \
243 eObjType, JSConstructor, JSDestructor); \ 241 eObjType, JSConstructor, JSDestructor); \
244 DefineConsts(pIsolate); \ 242 DefineConsts(pIsolate); \
245 DefineProps(pIsolate); \ 243 DefineProps(pIsolate); \
246 DefineMethods(pIsolate); \ 244 DefineMethods(pIsolate); \
247 } 245 }
248 246
249 #define DECLARE_JS_CLASS_RICH_PART() \ 247 #define DECLARE_JS_CLASS_RICH_PART() \
250 static void JSConstructor(IFXJS_Context* cc, v8::Local<v8::Object> obj); \ 248 static void JSConstructor(IJS_Context* cc, v8::Local<v8::Object> obj); \
251 static void JSDestructor(v8::Local<v8::Object> obj); \ 249 static void JSDestructor(v8::Local<v8::Object> obj); \
252 static void DefineProps(v8::Isolate* pIsoalte); \ 250 static void DefineProps(v8::Isolate* pIsoalte); \
253 static void DefineMethods(v8::Isolate* pIsoalte); \ 251 static void DefineMethods(v8::Isolate* pIsoalte); \
254 static JSPropertySpec JS_Class_Properties[]; \ 252 static JSPropertySpec JS_Class_Properties[]; \
255 static JSMethodSpec JS_Class_Methods[]; 253 static JSMethodSpec JS_Class_Methods[];
256 254
257 #define IMPLEMENT_JS_CLASS_RICH_PART(js_class_name, class_alternate, \ 255 #define IMPLEMENT_JS_CLASS_RICH_PART(js_class_name, class_alternate, \
258 class_name) \ 256 class_name) \
259 void js_class_name::JSConstructor(IFXJS_Context* cc, \ 257 void js_class_name::JSConstructor(IJS_Context* cc, \
260 v8::Local<v8::Object> obj) { \ 258 v8::Local<v8::Object> obj) { \
261 CJS_Object* pObj = new js_class_name(obj); \ 259 CJS_Object* pObj = new js_class_name(obj); \
262 pObj->SetEmbedObject(new class_alternate(pObj)); \ 260 pObj->SetEmbedObject(new class_alternate(pObj)); \
263 FXJS_SetPrivate(nullptr, obj, (void*)pObj); \ 261 FXJS_SetPrivate(nullptr, obj, (void*)pObj); \
264 pObj->InitInstance(cc); \ 262 pObj->InitInstance(cc); \
265 } \ 263 } \
266 void js_class_name::JSDestructor(v8::Local<v8::Object> obj) { \ 264 void js_class_name::JSDestructor(v8::Local<v8::Object> obj) { \
267 js_class_name* pObj = (js_class_name*)FXJS_GetPrivate(nullptr, obj); \ 265 js_class_name* pObj = (js_class_name*)FXJS_GetPrivate(nullptr, obj); \
268 pObj->ExitInstance(); \ 266 pObj->ExitInstance(); \
269 delete pObj; \ 267 delete pObj; \
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject()); 358 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject());
361 FX_BOOL bRet = pObj->QueryProperty(propname.c_str()); 359 FX_BOOL bRet = pObj->QueryProperty(propname.c_str());
362 info.GetReturnValue().Set(bRet ? 4 : 0); 360 info.GetReturnValue().Set(bRet ? 4 : 0);
363 } 361 }
364 362
365 template <class Alt> 363 template <class Alt>
366 void JSSpecialPropGet(const char* class_name, 364 void JSSpecialPropGet(const char* class_name,
367 v8::Local<v8::String> property, 365 v8::Local<v8::String> property,
368 const v8::PropertyCallbackInfo<v8::Value>& info) { 366 const v8::PropertyCallbackInfo<v8::Value>& info) {
369 v8::Isolate* isolate = info.GetIsolate(); 367 v8::Isolate* isolate = info.GetIsolate();
370 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 368 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
371 if (!pRuntime) 369 if (!pRuntime)
372 return; 370 return;
373 IFXJS_Context* pRuntimeContext = pRuntime->GetCurrentContext(); 371 IJS_Context* pRuntimeContext = pRuntime->GetCurrentContext();
374 CJS_Object* pJSObj = 372 CJS_Object* pJSObj =
375 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder())); 373 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder()));
376 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject()); 374 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject());
377 v8::String::Utf8Value utf8_value(property); 375 v8::String::Utf8Value utf8_value(property);
378 CFX_WideString propname = 376 CFX_WideString propname =
379 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length()); 377 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length());
380 CFX_WideString sError; 378 CFX_WideString sError;
381 CJS_PropValue value(isolate); 379 CJS_PropValue value(isolate);
382 value.StartGetting(); 380 value.StartGetting();
383 if (!pObj->DoProperty(pRuntimeContext, propname.c_str(), value, sError)) { 381 if (!pObj->DoProperty(pRuntimeContext, propname.c_str(), value, sError)) {
384 FXJS_Error(isolate, JSFormatErrorString(class_name, "GetProperty", sError)); 382 FXJS_Error(isolate, JSFormatErrorString(class_name, "GetProperty", sError));
385 return; 383 return;
386 } 384 }
387 info.GetReturnValue().Set((v8::Local<v8::Value>)value); 385 info.GetReturnValue().Set((v8::Local<v8::Value>)value);
388 } 386 }
389 387
390 template <class Alt> 388 template <class Alt>
391 void JSSpecialPropPut(const char* class_name, 389 void JSSpecialPropPut(const char* class_name,
392 v8::Local<v8::String> property, 390 v8::Local<v8::String> property,
393 v8::Local<v8::Value> value, 391 v8::Local<v8::Value> value,
394 const v8::PropertyCallbackInfo<v8::Value>& info) { 392 const v8::PropertyCallbackInfo<v8::Value>& info) {
395 v8::Isolate* isolate = info.GetIsolate(); 393 v8::Isolate* isolate = info.GetIsolate();
396 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 394 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
397 if (!pRuntime) 395 if (!pRuntime)
398 return; 396 return;
399 IFXJS_Context* pRuntimeContext = pRuntime->GetCurrentContext(); 397 IJS_Context* pRuntimeContext = pRuntime->GetCurrentContext();
400 CJS_Object* pJSObj = 398 CJS_Object* pJSObj =
401 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder())); 399 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder()));
402 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject()); 400 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject());
403 v8::String::Utf8Value utf8_value(property); 401 v8::String::Utf8Value utf8_value(property);
404 CFX_WideString propname = 402 CFX_WideString propname =
405 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length()); 403 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length());
406 CFX_WideString sError; 404 CFX_WideString sError;
407 CJS_PropValue PropValue(CJS_Value(isolate, value, CJS_Value::VT_unknown)); 405 CJS_PropValue PropValue(CJS_Value(isolate, value, CJS_Value::VT_unknown));
408 PropValue.StartSetting(); 406 PropValue.StartSetting();
409 if (!pObj->DoProperty(pRuntimeContext, propname.c_str(), PropValue, sError)) { 407 if (!pObj->DoProperty(pRuntimeContext, propname.c_str(), PropValue, sError)) {
410 FXJS_Error(isolate, JSFormatErrorString(class_name, "PutProperty", sError)); 408 FXJS_Error(isolate, JSFormatErrorString(class_name, "PutProperty", sError));
411 } 409 }
412 } 410 }
413 411
414 template <class Alt> 412 template <class Alt>
415 void JSSpecialPropDel(const char* class_name, 413 void JSSpecialPropDel(const char* class_name,
416 v8::Local<v8::String> property, 414 v8::Local<v8::String> property,
417 const v8::PropertyCallbackInfo<v8::Boolean>& info) { 415 const v8::PropertyCallbackInfo<v8::Boolean>& info) {
418 v8::Isolate* isolate = info.GetIsolate(); 416 v8::Isolate* isolate = info.GetIsolate();
419 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 417 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
420 if (!pRuntime) 418 if (!pRuntime)
421 return; 419 return;
422 IFXJS_Context* pRuntimeContext = pRuntime->GetCurrentContext(); 420 IJS_Context* pRuntimeContext = pRuntime->GetCurrentContext();
423 CJS_Object* pJSObj = 421 CJS_Object* pJSObj =
424 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder())); 422 reinterpret_cast<CJS_Object*>(FXJS_GetPrivate(isolate, info.Holder()));
425 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject()); 423 Alt* pObj = reinterpret_cast<Alt*>(pJSObj->GetEmbedObject());
426 v8::String::Utf8Value utf8_value(property); 424 v8::String::Utf8Value utf8_value(property);
427 CFX_WideString propname = 425 CFX_WideString propname =
428 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length()); 426 CFX_WideString::FromUTF8(*utf8_value, utf8_value.length());
429 CFX_WideString sError; 427 CFX_WideString sError;
430 if (!pObj->DelProperty(pRuntimeContext, propname.c_str(), sError)) { 428 if (!pObj->DelProperty(pRuntimeContext, propname.c_str(), sError)) {
431 CFX_ByteString cbName; 429 CFX_ByteString cbName;
432 cbName.Format("%s.%s", class_name, "DelProperty"); 430 cbName.Format("%s.%s", class_name, "DelProperty");
433 // Probably a missing call to JSFX_Error(). 431 // Probably a missing call to JSFX_Error().
434 } 432 }
435 } 433 }
436 434
437 template <FX_BOOL (*F)(IFXJS_Context* cc, 435 template <FX_BOOL (*F)(IJS_Context* cc,
438 const CJS_Parameters& params, 436 const CJS_Parameters& params,
439 CJS_Value& vRet, 437 CJS_Value& vRet,
440 CFX_WideString& sError)> 438 CFX_WideString& sError)>
441 void JSGlobalFunc(const char* func_name_string, 439 void JSGlobalFunc(const char* func_name_string,
442 const v8::FunctionCallbackInfo<v8::Value>& info) { 440 const v8::FunctionCallbackInfo<v8::Value>& info) {
443 v8::Isolate* isolate = info.GetIsolate(); 441 v8::Isolate* isolate = info.GetIsolate();
444 IFXJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate); 442 IJS_Runtime* pRuntime = FXJS_GetRuntimeFromIsolate(isolate);
445 if (!pRuntime) 443 if (!pRuntime)
446 return; 444 return;
447 IFXJS_Context* cc = pRuntime->GetCurrentContext(); 445 IJS_Context* cc = pRuntime->GetCurrentContext();
448 CJS_Parameters parameters; 446 CJS_Parameters parameters;
449 for (unsigned int i = 0; i < (unsigned int)info.Length(); i++) { 447 for (unsigned int i = 0; i < (unsigned int)info.Length(); i++) {
450 parameters.push_back(CJS_Value(isolate, info[i], CJS_Value::VT_unknown)); 448 parameters.push_back(CJS_Value(isolate, info[i], CJS_Value::VT_unknown));
451 } 449 }
452 CJS_Value valueRes(isolate); 450 CJS_Value valueRes(isolate);
453 CFX_WideString sError; 451 CFX_WideString sError;
454 if (!(*F)(cc, parameters, valueRes, sError)) { 452 if (!(*F)(cc, parameters, valueRes, sError)) {
455 FXJS_Error(isolate, JSFormatErrorString(func_name_string, nullptr, sError)); 453 FXJS_Error(isolate, JSFormatErrorString(func_name_string, nullptr, sError));
456 return; 454 return;
457 } 455 }
(...skipping 22 matching lines...) Expand all
480 for (size_t i = 0; i < FX_ArraySize(global_methods) - 1; ++i) { \ 478 for (size_t i = 0; i < FX_ArraySize(global_methods) - 1; ++i) { \
481 FXJS_DefineGlobalMethod(pIsolate, \ 479 FXJS_DefineGlobalMethod(pIsolate, \
482 js_class_name::global_methods[i].pName, \ 480 js_class_name::global_methods[i].pName, \
483 js_class_name::global_methods[i].pMethodCall); \ 481 js_class_name::global_methods[i].pMethodCall); \
484 } \ 482 } \
485 } 483 }
486 484
487 CJS_Value::Type GET_VALUE_TYPE(v8::Local<v8::Value> p); 485 CJS_Value::Type GET_VALUE_TYPE(v8::Local<v8::Value> p);
488 486
489 #endif // FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_ 487 #endif // FPDFSDK_SRC_JAVASCRIPT_JS_DEFINE_H_
OLDNEW
« no previous file with comments | « fpdfsdk/src/javascript/JS_Context.h ('k') | fpdfsdk/src/javascript/JS_Object.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698