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

Side by Side Diff: fpdfsdk/javascript/JS_Value.h

Issue 2217253002: Remove backpointer to runtime from CJS_Array. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Remove non-const refs Created 4 years, 4 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/javascript/Field.cpp ('k') | fpdfsdk/javascript/JS_Value.cpp » ('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_JAVASCRIPT_JS_VALUE_H_ 7 #ifndef FPDFSDK_JAVASCRIPT_JS_VALUE_H_
8 #define FPDFSDK_JAVASCRIPT_JS_VALUE_H_ 8 #define FPDFSDK_JAVASCRIPT_JS_VALUE_H_
9 9
10 #include <vector> 10 #include <vector>
(...skipping 22 matching lines...) Expand all
33 33
34 explicit CJS_Value(CJS_Runtime* pRuntime); 34 explicit CJS_Value(CJS_Runtime* pRuntime);
35 CJS_Value(CJS_Runtime* pRuntime, v8::Local<v8::Value> pValue); 35 CJS_Value(CJS_Runtime* pRuntime, v8::Local<v8::Value> pValue);
36 CJS_Value(CJS_Runtime* pRuntime, const int& iValue); 36 CJS_Value(CJS_Runtime* pRuntime, const int& iValue);
37 CJS_Value(CJS_Runtime* pRuntime, const double& dValue); 37 CJS_Value(CJS_Runtime* pRuntime, const double& dValue);
38 CJS_Value(CJS_Runtime* pRuntime, const float& fValue); 38 CJS_Value(CJS_Runtime* pRuntime, const float& fValue);
39 CJS_Value(CJS_Runtime* pRuntime, const bool& bValue); 39 CJS_Value(CJS_Runtime* pRuntime, const bool& bValue);
40 CJS_Value(CJS_Runtime* pRuntime, CJS_Object* pObj); 40 CJS_Value(CJS_Runtime* pRuntime, CJS_Object* pObj);
41 CJS_Value(CJS_Runtime* pRuntime, const FX_CHAR* pStr); 41 CJS_Value(CJS_Runtime* pRuntime, const FX_CHAR* pStr);
42 CJS_Value(CJS_Runtime* pRuntime, const FX_WCHAR* pWstr); 42 CJS_Value(CJS_Runtime* pRuntime, const FX_WCHAR* pWstr);
43 CJS_Value(CJS_Runtime* pRuntime, CJS_Array& array); 43 CJS_Value(CJS_Runtime* pRuntime, const CJS_Array& array);
44 CJS_Value(const CJS_Value& other); 44 CJS_Value(const CJS_Value& other);
45 45
46 ~CJS_Value(); 46 ~CJS_Value();
47 47
48 void SetNull(); 48 void SetNull();
49 void Attach(v8::Local<v8::Value> pValue); 49 void Attach(v8::Local<v8::Value> pValue);
50 void Detach(); 50 void Detach();
51 51
52 static Type GetValueType(v8::Local<v8::Value> value); 52 static Type GetValueType(v8::Local<v8::Value> value);
53 Type GetType() const { return GetValueType(m_pValue); } 53 Type GetType() const { return GetValueType(m_pValue); }
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 void operator<<(CJS_Array& array); 122 void operator<<(CJS_Array& array);
123 void operator<<(CJS_Date& date); 123 void operator<<(CJS_Date& date);
124 void operator>>(CJS_Date& date) const; 124 void operator>>(CJS_Date& date) const;
125 125
126 private: 126 private:
127 bool m_bIsSetting; 127 bool m_bIsSetting;
128 }; 128 };
129 129
130 class CJS_Array { 130 class CJS_Array {
131 public: 131 public:
132 explicit CJS_Array(CJS_Runtime* pRuntime); 132 CJS_Array();
133 CJS_Array(const CJS_Array& other); 133 CJS_Array(const CJS_Array& other);
134 virtual ~CJS_Array(); 134 virtual ~CJS_Array();
135 135
136 void Attach(v8::Local<v8::Array> pArray); 136 void Attach(v8::Local<v8::Array> pArray);
137 void GetElement(unsigned index, CJS_Value& value) const; 137 void GetElement(v8::Isolate* pIsolate,
138 void SetElement(unsigned index, CJS_Value value); 138 unsigned index,
139 CJS_Value& value) const;
140 void SetElement(v8::Isolate* pIsolate,
141 unsigned index,
142 const CJS_Value& value);
139 int GetLength() const; 143 int GetLength() const;
140 144
141 v8::Local<v8::Array> ToV8Array() const; 145 v8::Local<v8::Array> ToV8Array(v8::Isolate* pIsolate) const;
142 CJS_Runtime* GetJSRuntime() const { return m_pJSRuntime; }
143 146
144 private: 147 private:
145 mutable v8::Local<v8::Array> m_pArray; 148 mutable v8::Local<v8::Array> m_pArray;
146 CJS_Runtime* const m_pJSRuntime;
147 }; 149 };
148 150
149 class CJS_Date { 151 class CJS_Date {
150 public: 152 public:
151 explicit CJS_Date(CJS_Runtime* pRuntime); 153 explicit CJS_Date(CJS_Runtime* pRuntime);
152 CJS_Date(CJS_Runtime* pRuntime, double dMsec_time); 154 CJS_Date(CJS_Runtime* pRuntime, double dMsec_time);
153 CJS_Date(CJS_Runtime* pRuntime, 155 CJS_Date(CJS_Runtime* pRuntime,
154 int year, 156 int year,
155 int mon, 157 int mon,
156 int day, 158 int day,
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 // names as wchar_t string literals corresponding to each positional argument. 212 // names as wchar_t string literals corresponding to each positional argument.
211 // The result will always contain |nKeywords| value, with unspecified ones 213 // The result will always contain |nKeywords| value, with unspecified ones
212 // being set to type VT_unknown. 214 // being set to type VT_unknown.
213 std::vector<CJS_Value> JS_ExpandKeywordParams( 215 std::vector<CJS_Value> JS_ExpandKeywordParams(
214 CJS_Runtime* pRuntime, 216 CJS_Runtime* pRuntime,
215 const std::vector<CJS_Value>& originals, 217 const std::vector<CJS_Value>& originals,
216 size_t nKeywords, 218 size_t nKeywords,
217 ...); 219 ...);
218 220
219 #endif // FPDFSDK_JAVASCRIPT_JS_VALUE_H_ 221 #endif // FPDFSDK_JAVASCRIPT_JS_VALUE_H_
OLDNEW
« no previous file with comments | « fpdfsdk/javascript/Field.cpp ('k') | fpdfsdk/javascript/JS_Value.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698