Remove backpointer to runtime from CJS_Array.
This is always available elsewhere, so save the bytes and ease
removal of CJS_Array since it now only contains a single v8 local.
Review-Url: https://codereview.chromium.org/2217253002
diff --git a/fpdfsdk/javascript/JS_Value.h b/fpdfsdk/javascript/JS_Value.h
index 01b4e5b..75c40a6 100644
--- a/fpdfsdk/javascript/JS_Value.h
+++ b/fpdfsdk/javascript/JS_Value.h
@@ -40,7 +40,7 @@
CJS_Value(CJS_Runtime* pRuntime, CJS_Object* pObj);
CJS_Value(CJS_Runtime* pRuntime, const FX_CHAR* pStr);
CJS_Value(CJS_Runtime* pRuntime, const FX_WCHAR* pWstr);
- CJS_Value(CJS_Runtime* pRuntime, CJS_Array& array);
+ CJS_Value(CJS_Runtime* pRuntime, const CJS_Array& array);
CJS_Value(const CJS_Value& other);
~CJS_Value();
@@ -129,21 +129,23 @@
class CJS_Array {
public:
- explicit CJS_Array(CJS_Runtime* pRuntime);
+ CJS_Array();
CJS_Array(const CJS_Array& other);
virtual ~CJS_Array();
void Attach(v8::Local<v8::Array> pArray);
- void GetElement(unsigned index, CJS_Value& value) const;
- void SetElement(unsigned index, CJS_Value value);
+ void GetElement(v8::Isolate* pIsolate,
+ unsigned index,
+ CJS_Value& value) const;
+ void SetElement(v8::Isolate* pIsolate,
+ unsigned index,
+ const CJS_Value& value);
int GetLength() const;
- v8::Local<v8::Array> ToV8Array() const;
- CJS_Runtime* GetJSRuntime() const { return m_pJSRuntime; }
+ v8::Local<v8::Array> ToV8Array(v8::Isolate* pIsolate) const;
private:
mutable v8::Local<v8::Array> m_pArray;
- CJS_Runtime* const m_pJSRuntime;
};
class CJS_Date {