From 2da7bd4d78897bed52fe1304694f4e970db65e58 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Tue, 17 Feb 2015 13:21:34 -0800 Subject: Tidy up JS_Defines.h This is a purely mechanical change, no new functionality. - Expand some macros which were merely a short-cut to save typing but reduced transparency. - Put GET_VALUE_TYPE() implementation into a .cpp file. This is a portion of the patch from issue 908033002 at patchset 40001 (http://crrev.com/908033002#ps40001) R=brucedawson@chromium.org Review URL: https://codereview.chromium.org/927263003 --- fpdfsdk/src/javascript/global.cpp | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'fpdfsdk/src/javascript/global.cpp') diff --git a/fpdfsdk/src/javascript/global.cpp b/fpdfsdk/src/javascript/global.cpp index b45fd04558..587ba85219 100644 --- a/fpdfsdk/src/javascript/global.cpp +++ b/fpdfsdk/src/javascript/global.cpp @@ -268,7 +268,7 @@ FX_BOOL global_alternate::DoProperty(IFXJS_Context* cc, FX_LPCWSTR propname, CJS return FALSE; } -FX_BOOL global_alternate::setPersistent(OBJ_METHOD_PARAMS) +FX_BOOL global_alternate::setPersistent(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& vRet, JS_ErrorString& sError) { if (params.size() != 2) { @@ -615,3 +615,28 @@ FX_BOOL global_alternate::SetGlobalVariables(FX_LPCSTR propname, int nType, return TRUE; } + +FXJSVALUETYPE GET_VALUE_TYPE(v8::Handle p) +{ + const unsigned int nHash = JS_CalcHash(JS_GetTypeof(p)); + + if (nHash == JSCONST_nUndefHash) + return VT_undefined; + if (nHash == JSCONST_nNullHash) + return VT_null; + if (nHash == JSCONST_nStringHash) + return VT_string; + if (nHash == JSCONST_nNumberHash) + return VT_number; + if (nHash == JSCONST_nBoolHash) + return VT_boolean; + if (nHash == JSCONST_nDateHash) + return VT_date; + if (nHash == JSCONST_nObjectHash) + return VT_object; + if (nHash == JSCONST_nFXobjHash) + return VT_fxobject; + + return VT_unknown; +} + -- cgit v1.2.3