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

Side by Side Diff: xfa/fxfa/fm2js/xfa_expression.h

Issue 1835703002: Remove FX_DWORD from XFA, part 2 (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 8 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 | « xfa/fxfa/fm2js/xfa_error.h ('k') | xfa/fxfa/fm2js/xfa_fmparse.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 XFA_FXFA_FM2JS_XFA_EXPRESSION_H_ 7 #ifndef XFA_FXFA_FM2JS_XFA_EXPRESSION_H_
8 #define XFA_FXFA_FM2JS_XFA_EXPRESSION_H_ 8 #define XFA_FXFA_FM2JS_XFA_EXPRESSION_H_
9 9
10 #include <memory> 10 #include <memory>
11 11
12 #include "xfa/fxfa/fm2js/xfa_simpleexpression.h" 12 #include "xfa/fxfa/fm2js/xfa_simpleexpression.h"
13 13
14 enum XFA_FM_EXPTYPE { 14 enum XFA_FM_EXPTYPE {
15 XFA_FM_EXPTYPE_UNKNOWN, 15 XFA_FM_EXPTYPE_UNKNOWN,
16 XFA_FM_EXPTYPE_FUNC, 16 XFA_FM_EXPTYPE_FUNC,
17 XFA_FM_EXPTYPE_VAR, 17 XFA_FM_EXPTYPE_VAR,
18 XFA_FM_EXPTYPE_EXP, 18 XFA_FM_EXPTYPE_EXP,
19 XFA_FM_EXPTYPE_BLOCK, 19 XFA_FM_EXPTYPE_BLOCK,
20 XFA_FM_EXPTYPE_IF, 20 XFA_FM_EXPTYPE_IF,
21 XFA_FM_EXPTYPE_BREAK, 21 XFA_FM_EXPTYPE_BREAK,
22 XFA_FM_EXPTYPE_CONTINUE, 22 XFA_FM_EXPTYPE_CONTINUE,
23 }; 23 };
24 24
25 class CXFA_FMExpression { 25 class CXFA_FMExpression {
26 public: 26 public:
27 explicit CXFA_FMExpression(FX_DWORD line); 27 explicit CXFA_FMExpression(uint32_t line);
28 CXFA_FMExpression(FX_DWORD line, XFA_FM_EXPTYPE type); 28 CXFA_FMExpression(uint32_t line, XFA_FM_EXPTYPE type);
29 virtual ~CXFA_FMExpression() {} 29 virtual ~CXFA_FMExpression() {}
30 virtual void ToJavaScript(CFX_WideTextBuf& javascript); 30 virtual void ToJavaScript(CFX_WideTextBuf& javascript);
31 virtual void ToImpliedReturnJS(CFX_WideTextBuf&); 31 virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
32 FX_DWORD GetLine() { return m_line; } 32 uint32_t GetLine() { return m_line; }
33 XFA_FM_EXPTYPE GetExpType() const { return m_type; } 33 XFA_FM_EXPTYPE GetExpType() const { return m_type; }
34 34
35 protected: 35 protected:
36 XFA_FM_EXPTYPE m_type; 36 XFA_FM_EXPTYPE m_type;
37 FX_DWORD m_line; 37 uint32_t m_line;
38 }; 38 };
39 39
40 class CXFA_FMFunctionDefinition : public CXFA_FMExpression { 40 class CXFA_FMFunctionDefinition : public CXFA_FMExpression {
41 public: 41 public:
42 CXFA_FMFunctionDefinition(FX_DWORD line, 42 CXFA_FMFunctionDefinition(uint32_t line,
43 FX_BOOL isGlobal, 43 FX_BOOL isGlobal,
44 const CFX_WideStringC& wsName, 44 const CFX_WideStringC& wsName,
45 CFX_WideStringCArray* pArguments, 45 CFX_WideStringCArray* pArguments,
46 CFX_PtrArray* pExpressions); 46 CFX_PtrArray* pExpressions);
47 ~CXFA_FMFunctionDefinition() override; 47 ~CXFA_FMFunctionDefinition() override;
48 void ToJavaScript(CFX_WideTextBuf& javascript) override; 48 void ToJavaScript(CFX_WideTextBuf& javascript) override;
49 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 49 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
50 50
51 private: 51 private:
52 CFX_WideStringC m_wsName; 52 CFX_WideStringC m_wsName;
53 CFX_WideStringCArray* m_pArguments; 53 CFX_WideStringCArray* m_pArguments;
54 CFX_PtrArray* m_pExpressions; 54 CFX_PtrArray* m_pExpressions;
55 FX_BOOL m_isGlobal; 55 FX_BOOL m_isGlobal;
56 }; 56 };
57 57
58 class CXFA_FMVarExpression : public CXFA_FMExpression { 58 class CXFA_FMVarExpression : public CXFA_FMExpression {
59 public: 59 public:
60 CXFA_FMVarExpression(FX_DWORD line, 60 CXFA_FMVarExpression(uint32_t line,
61 const CFX_WideStringC& wsName, 61 const CFX_WideStringC& wsName,
62 CXFA_FMExpression* pInit); 62 CXFA_FMExpression* pInit);
63 void ToJavaScript(CFX_WideTextBuf& javascript) override; 63 void ToJavaScript(CFX_WideTextBuf& javascript) override;
64 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 64 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
65 65
66 private: 66 private:
67 CFX_WideStringC m_wsName; 67 CFX_WideStringC m_wsName;
68 std::unique_ptr<CXFA_FMExpression> m_pInit; 68 std::unique_ptr<CXFA_FMExpression> m_pInit;
69 }; 69 };
70 70
71 class CXFA_FMExpExpression : public CXFA_FMExpression { 71 class CXFA_FMExpExpression : public CXFA_FMExpression {
72 public: 72 public:
73 CXFA_FMExpExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExpression); 73 CXFA_FMExpExpression(uint32_t line, CXFA_FMSimpleExpression* pExpression);
74 void ToJavaScript(CFX_WideTextBuf& javascript) override; 74 void ToJavaScript(CFX_WideTextBuf& javascript) override;
75 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 75 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
76 76
77 private: 77 private:
78 std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression; 78 std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression;
79 }; 79 };
80 80
81 class CXFA_FMBlockExpression : public CXFA_FMExpression { 81 class CXFA_FMBlockExpression : public CXFA_FMExpression {
82 public: 82 public:
83 CXFA_FMBlockExpression(FX_DWORD line, CFX_PtrArray* pExpressionList); 83 CXFA_FMBlockExpression(uint32_t line, CFX_PtrArray* pExpressionList);
84 ~CXFA_FMBlockExpression() override; 84 ~CXFA_FMBlockExpression() override;
85 void ToJavaScript(CFX_WideTextBuf& javascript) override; 85 void ToJavaScript(CFX_WideTextBuf& javascript) override;
86 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 86 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
87 87
88 private: 88 private:
89 CFX_PtrArray* m_pExpressionList; 89 CFX_PtrArray* m_pExpressionList;
90 }; 90 };
91 91
92 class CXFA_FMDoExpression : public CXFA_FMExpression { 92 class CXFA_FMDoExpression : public CXFA_FMExpression {
93 public: 93 public:
94 CXFA_FMDoExpression(FX_DWORD line, CXFA_FMExpression* pList); 94 CXFA_FMDoExpression(uint32_t line, CXFA_FMExpression* pList);
95 void ToJavaScript(CFX_WideTextBuf& javascript) override; 95 void ToJavaScript(CFX_WideTextBuf& javascript) override;
96 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 96 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
97 97
98 private: 98 private:
99 std::unique_ptr<CXFA_FMExpression> m_pList; 99 std::unique_ptr<CXFA_FMExpression> m_pList;
100 }; 100 };
101 101
102 class CXFA_FMIfExpression : public CXFA_FMExpression { 102 class CXFA_FMIfExpression : public CXFA_FMExpression {
103 public: 103 public:
104 CXFA_FMIfExpression(FX_DWORD line, 104 CXFA_FMIfExpression(uint32_t line,
105 CXFA_FMSimpleExpression* pExpression, 105 CXFA_FMSimpleExpression* pExpression,
106 CXFA_FMExpression* pIfExpression, 106 CXFA_FMExpression* pIfExpression,
107 CXFA_FMExpression* pElseExpression); 107 CXFA_FMExpression* pElseExpression);
108 void ToJavaScript(CFX_WideTextBuf& javascript) override; 108 void ToJavaScript(CFX_WideTextBuf& javascript) override;
109 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 109 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
110 110
111 private: 111 private:
112 std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression; 112 std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression;
113 std::unique_ptr<CXFA_FMExpression> m_pIfExpression; 113 std::unique_ptr<CXFA_FMExpression> m_pIfExpression;
114 std::unique_ptr<CXFA_FMExpression> m_pElseExpression; 114 std::unique_ptr<CXFA_FMExpression> m_pElseExpression;
115 }; 115 };
116 116
117 class CXFA_FMLoopExpression : public CXFA_FMExpression { 117 class CXFA_FMLoopExpression : public CXFA_FMExpression {
118 public: 118 public:
119 explicit CXFA_FMLoopExpression(FX_DWORD line) : CXFA_FMExpression(line) {} 119 explicit CXFA_FMLoopExpression(uint32_t line) : CXFA_FMExpression(line) {}
120 ~CXFA_FMLoopExpression() override; 120 ~CXFA_FMLoopExpression() override;
121 void ToJavaScript(CFX_WideTextBuf& javascript) override; 121 void ToJavaScript(CFX_WideTextBuf& javascript) override;
122 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 122 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
123 }; 123 };
124 124
125 class CXFA_FMWhileExpression : public CXFA_FMLoopExpression { 125 class CXFA_FMWhileExpression : public CXFA_FMLoopExpression {
126 public: 126 public:
127 CXFA_FMWhileExpression(FX_DWORD line, 127 CXFA_FMWhileExpression(uint32_t line,
128 CXFA_FMSimpleExpression* pCodition, 128 CXFA_FMSimpleExpression* pCodition,
129 CXFA_FMExpression* pExpression); 129 CXFA_FMExpression* pExpression);
130 void ToJavaScript(CFX_WideTextBuf& javascript) override; 130 void ToJavaScript(CFX_WideTextBuf& javascript) override;
131 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 131 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
132 132
133 private: 133 private:
134 std::unique_ptr<CXFA_FMSimpleExpression> m_pCondition; 134 std::unique_ptr<CXFA_FMSimpleExpression> m_pCondition;
135 std::unique_ptr<CXFA_FMExpression> m_pExpression; 135 std::unique_ptr<CXFA_FMExpression> m_pExpression;
136 }; 136 };
137 137
138 class CXFA_FMBreakExpression : public CXFA_FMExpression { 138 class CXFA_FMBreakExpression : public CXFA_FMExpression {
139 public: 139 public:
140 explicit CXFA_FMBreakExpression(FX_DWORD line); 140 explicit CXFA_FMBreakExpression(uint32_t line);
141 ~CXFA_FMBreakExpression() override; 141 ~CXFA_FMBreakExpression() override;
142 void ToJavaScript(CFX_WideTextBuf& javascript) override; 142 void ToJavaScript(CFX_WideTextBuf& javascript) override;
143 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 143 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
144 }; 144 };
145 145
146 class CXFA_FMContinueExpression : public CXFA_FMExpression { 146 class CXFA_FMContinueExpression : public CXFA_FMExpression {
147 public: 147 public:
148 explicit CXFA_FMContinueExpression(FX_DWORD line); 148 explicit CXFA_FMContinueExpression(uint32_t line);
149 ~CXFA_FMContinueExpression() override; 149 ~CXFA_FMContinueExpression() override;
150 void ToJavaScript(CFX_WideTextBuf& javascript) override; 150 void ToJavaScript(CFX_WideTextBuf& javascript) override;
151 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 151 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
152 }; 152 };
153 153
154 class CXFA_FMForExpression : public CXFA_FMLoopExpression { 154 class CXFA_FMForExpression : public CXFA_FMLoopExpression {
155 public: 155 public:
156 CXFA_FMForExpression(FX_DWORD line, 156 CXFA_FMForExpression(uint32_t line,
157 const CFX_WideStringC& wsVariant, 157 const CFX_WideStringC& wsVariant,
158 CXFA_FMSimpleExpression* pAssignment, 158 CXFA_FMSimpleExpression* pAssignment,
159 CXFA_FMSimpleExpression* pAccessor, 159 CXFA_FMSimpleExpression* pAccessor,
160 int32_t iDirection, 160 int32_t iDirection,
161 CXFA_FMSimpleExpression* pStep, 161 CXFA_FMSimpleExpression* pStep,
162 CXFA_FMExpression* pList); 162 CXFA_FMExpression* pList);
163 void ToJavaScript(CFX_WideTextBuf& javascript) override; 163 void ToJavaScript(CFX_WideTextBuf& javascript) override;
164 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 164 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
165 165
166 private: 166 private:
167 CFX_WideStringC m_wsVariant; 167 CFX_WideStringC m_wsVariant;
168 std::unique_ptr<CXFA_FMSimpleExpression> m_pAssignment; 168 std::unique_ptr<CXFA_FMSimpleExpression> m_pAssignment;
169 std::unique_ptr<CXFA_FMSimpleExpression> m_pAccessor; 169 std::unique_ptr<CXFA_FMSimpleExpression> m_pAccessor;
170 int32_t m_iDirection; 170 int32_t m_iDirection;
171 std::unique_ptr<CXFA_FMSimpleExpression> m_pStep; 171 std::unique_ptr<CXFA_FMSimpleExpression> m_pStep;
172 std::unique_ptr<CXFA_FMExpression> m_pList; 172 std::unique_ptr<CXFA_FMExpression> m_pList;
173 }; 173 };
174 174
175 class CXFA_FMForeachExpression : public CXFA_FMLoopExpression { 175 class CXFA_FMForeachExpression : public CXFA_FMLoopExpression {
176 public: 176 public:
177 CXFA_FMForeachExpression(FX_DWORD line, 177 CXFA_FMForeachExpression(uint32_t line,
178 const CFX_WideStringC& wsIdentifier, 178 const CFX_WideStringC& wsIdentifier,
179 CFX_PtrArray* pAccessors, 179 CFX_PtrArray* pAccessors,
180 CXFA_FMExpression* pList); 180 CXFA_FMExpression* pList);
181 ~CXFA_FMForeachExpression() override; 181 ~CXFA_FMForeachExpression() override;
182 void ToJavaScript(CFX_WideTextBuf& javascript) override; 182 void ToJavaScript(CFX_WideTextBuf& javascript) override;
183 void ToImpliedReturnJS(CFX_WideTextBuf&) override; 183 void ToImpliedReturnJS(CFX_WideTextBuf&) override;
184 184
185 private: 185 private:
186 CFX_WideStringC m_wsIdentifier; 186 CFX_WideStringC m_wsIdentifier;
187 CFX_PtrArray* m_pAccessors; 187 CFX_PtrArray* m_pAccessors;
188 std::unique_ptr<CXFA_FMExpression> m_pList; 188 std::unique_ptr<CXFA_FMExpression> m_pList;
189 }; 189 };
190 190
191 #endif // XFA_FXFA_FM2JS_XFA_EXPRESSION_H_ 191 #endif // XFA_FXFA_FM2JS_XFA_EXPRESSION_H_
OLDNEW
« no previous file with comments | « xfa/fxfa/fm2js/xfa_error.h ('k') | xfa/fxfa/fm2js/xfa_fmparse.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698