OLD | NEW |
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_FMPARSE_H_ | 7 #ifndef XFA_FXFA_FM2JS_XFA_FMPARSE_H_ |
8 #define XFA_FXFA_FM2JS_XFA_FMPARSE_H_ | 8 #define XFA_FXFA_FM2JS_XFA_FMPARSE_H_ |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 | 11 |
12 #include "xfa/fxfa/fm2js/xfa_expression.h" | 12 #include "xfa/fxfa/fm2js/xfa_expression.h" |
13 #include "xfa/fxfa/fm2js/xfa_lexer.h" | 13 #include "xfa/fxfa/fm2js/xfa_lexer.h" |
14 | 14 |
15 class CXFA_FMParse { | 15 class CXFA_FMParse { |
16 public: | 16 public: |
17 CXFA_FMParse(); | 17 CXFA_FMParse(); |
| 18 ~CXFA_FMParse(); |
| 19 |
18 int32_t Init(const CFX_WideStringC& wsFormcalc, CXFA_FMErrorInfo* pErrorInfo); | 20 int32_t Init(const CFX_WideStringC& wsFormcalc, CXFA_FMErrorInfo* pErrorInfo); |
19 void NextToken(); | 21 void NextToken(); |
20 void Check(XFA_FM_TOKEN op); | 22 void Check(XFA_FM_TOKEN op); |
21 void Error(uint32_t lineNum, const FX_WCHAR* msg, ...); | 23 void Error(uint32_t lineNum, const FX_WCHAR* msg, ...); |
22 CFX_ArrayTemplate<CXFA_FMExpression*>* ParseTopExpression(); | 24 CFX_ArrayTemplate<CXFA_FMExpression*>* ParseTopExpression(); |
23 CXFA_FMExpression* ParseFunction(); | 25 CXFA_FMExpression* ParseFunction(); |
24 CXFA_FMExpression* ParseExpression(); | 26 CXFA_FMExpression* ParseExpression(); |
25 CXFA_FMExpression* ParseVarExpression(); | 27 CXFA_FMExpression* ParseVarExpression(); |
26 CXFA_FMExpression* ParseExpExpression(); | 28 CXFA_FMExpression* ParseExpExpression(); |
27 CXFA_FMExpression* ParseBlockExpression(); | 29 CXFA_FMExpression* ParseBlockExpression(); |
(...skipping 16 matching lines...) Expand all Loading... |
44 CXFA_FMSimpleExpression* ParsePostExpression(CXFA_FMSimpleExpression* e); | 46 CXFA_FMSimpleExpression* ParsePostExpression(CXFA_FMSimpleExpression* e); |
45 CXFA_FMSimpleExpression* ParseIndexExpression(); | 47 CXFA_FMSimpleExpression* ParseIndexExpression(); |
46 | 48 |
47 private: | 49 private: |
48 std::unique_ptr<CXFA_FMLexer> m_lexer; | 50 std::unique_ptr<CXFA_FMLexer> m_lexer; |
49 CXFA_FMToken* m_pToken; | 51 CXFA_FMToken* m_pToken; |
50 CXFA_FMErrorInfo* m_pErrorInfo; | 52 CXFA_FMErrorInfo* m_pErrorInfo; |
51 }; | 53 }; |
52 | 54 |
53 #endif // XFA_FXFA_FM2JS_XFA_FMPARSE_H_ | 55 #endif // XFA_FXFA_FM2JS_XFA_FMPARSE_H_ |
OLD | NEW |