| Index: xfa/src/fxfa/src/fm2js/xfa_expression.h
|
| diff --git a/xfa/src/fxfa/src/fm2js/xfa_expression.h b/xfa/src/fxfa/src/fm2js/xfa_expression.h
|
| index dcc0a7b04f265cfc8867e0ea3095f5652da72d58..8515f0204b748cf80c5df8ac613e96e91cef2b07 100644
|
| --- a/xfa/src/fxfa/src/fm2js/xfa_expression.h
|
| +++ b/xfa/src/fxfa/src/fm2js/xfa_expression.h
|
| @@ -1,178 +1,178 @@
|
| -// Copyright 2014 PDFium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| -
|
| -#ifndef _XFA_FM_EXPRESSION_H
|
| -#define _XFA_FM_EXPRESSION_H
|
| -enum XFA_FM_EXPTYPE {
|
| - XFA_FM_EXPTYPE_UNKNOWN,
|
| - XFA_FM_EXPTYPE_FUNC,
|
| - XFA_FM_EXPTYPE_VAR,
|
| - XFA_FM_EXPTYPE_EXP,
|
| - XFA_FM_EXPTYPE_BLOCK,
|
| - XFA_FM_EXPTYPE_IF,
|
| - XFA_FM_EXPTYPE_BREAK,
|
| - XFA_FM_EXPTYPE_CONTINUE,
|
| -};
|
| -class CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMExpression(FX_DWORD line);
|
| - CXFA_FMExpression(FX_DWORD line, XFA_FM_EXPTYPE type);
|
| - virtual ~CXFA_FMExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| - FX_DWORD GetLine() { return m_line; }
|
| - XFA_FM_EXPTYPE GetExpType() const { return m_type; }
|
| -
|
| - protected:
|
| - XFA_FM_EXPTYPE m_type;
|
| - FX_DWORD m_line;
|
| -};
|
| -class CXFA_FMFunctionDefinition : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMFunctionDefinition(FX_DWORD line,
|
| - FX_BOOL isGlobal,
|
| - const CFX_WideStringC& wsName,
|
| - CFX_WideStringCArray* pArguments,
|
| - CFX_PtrArray* pExpressions);
|
| - virtual ~CXFA_FMFunctionDefinition();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CFX_WideStringC m_wsName;
|
| - CFX_WideStringCArray* m_pArguments;
|
| - CFX_PtrArray* m_pExpressions;
|
| - FX_BOOL m_isGlobal;
|
| -};
|
| -class CXFA_FMVarExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMVarExpression(FX_DWORD line,
|
| - const CFX_WideStringC& wsName,
|
| - CXFA_FMExpression* pInit);
|
| - virtual ~CXFA_FMVarExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CFX_WideStringC m_wsName;
|
| - CXFA_FMExpression* m_pInit;
|
| -};
|
| -class CXFA_FMExpExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMExpExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExpression);
|
| - virtual ~CXFA_FMExpExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CXFA_FMSimpleExpression* m_pExpression;
|
| -};
|
| -class CXFA_FMBlockExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMBlockExpression(FX_DWORD line, CFX_PtrArray* pExpressionList);
|
| - virtual ~CXFA_FMBlockExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CFX_PtrArray* m_pExpressionList;
|
| -};
|
| -class CXFA_FMDoExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMDoExpression(FX_DWORD line, CXFA_FMExpression* pList);
|
| - virtual ~CXFA_FMDoExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CXFA_FMExpression* m_pList;
|
| -};
|
| -class CXFA_FMIfExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMIfExpression(FX_DWORD line,
|
| - CXFA_FMSimpleExpression* pExpression,
|
| - CXFA_FMExpression* pIfExpression,
|
| - CXFA_FMExpression* pElseExpression);
|
| - virtual ~CXFA_FMIfExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CXFA_FMSimpleExpression* m_pExpression;
|
| - CXFA_FMExpression* m_pIfExpression;
|
| - CXFA_FMExpression* m_pElseExpression;
|
| -};
|
| -class CXFA_FMLoopExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMLoopExpression(FX_DWORD line) : CXFA_FMExpression(line) {}
|
| - virtual ~CXFA_FMLoopExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -};
|
| -class CXFA_FMWhileExpression : public CXFA_FMLoopExpression {
|
| - public:
|
| - CXFA_FMWhileExpression(FX_DWORD line,
|
| - CXFA_FMSimpleExpression* pCodition,
|
| - CXFA_FMExpression* pExpression);
|
| - virtual ~CXFA_FMWhileExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CXFA_FMSimpleExpression* m_pCondition;
|
| - CXFA_FMExpression* m_pExpression;
|
| -};
|
| -class CXFA_FMBreakExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMBreakExpression(FX_DWORD line);
|
| - virtual ~CXFA_FMBreakExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -};
|
| -class CXFA_FMContinueExpression : public CXFA_FMExpression {
|
| - public:
|
| - CXFA_FMContinueExpression(FX_DWORD line);
|
| - virtual ~CXFA_FMContinueExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -};
|
| -class CXFA_FMForExpression : public CXFA_FMLoopExpression {
|
| - public:
|
| - CXFA_FMForExpression(FX_DWORD line,
|
| - const CFX_WideStringC& wsVariant,
|
| - CXFA_FMSimpleExpression* pAssignment,
|
| - CXFA_FMSimpleExpression* pAccessor,
|
| - int32_t iDirection,
|
| - CXFA_FMSimpleExpression* pStep,
|
| - CXFA_FMExpression* pList);
|
| - virtual ~CXFA_FMForExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CFX_WideStringC m_wsVariant;
|
| - CXFA_FMSimpleExpression* m_pAssignment;
|
| - CXFA_FMSimpleExpression* m_pAccessor;
|
| - int32_t m_iDirection;
|
| - CXFA_FMSimpleExpression* m_pStep;
|
| - CXFA_FMExpression* m_pList;
|
| -};
|
| -class CXFA_FMForeachExpression : public CXFA_FMLoopExpression {
|
| - public:
|
| - CXFA_FMForeachExpression(FX_DWORD line,
|
| - const CFX_WideStringC& wsIdentifier,
|
| - CFX_PtrArray* pAccessors,
|
| - CXFA_FMExpression* pList);
|
| - virtual ~CXFA_FMForeachExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| -
|
| - private:
|
| - CFX_WideStringC m_wsIdentifier;
|
| - CFX_PtrArray* m_pAccessors;
|
| - CXFA_FMExpression* m_pList;
|
| -};
|
| -#endif
|
| +// Copyright 2014 PDFium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| +
|
| +#ifndef _XFA_FM_EXPRESSION_H
|
| +#define _XFA_FM_EXPRESSION_H
|
| +enum XFA_FM_EXPTYPE {
|
| + XFA_FM_EXPTYPE_UNKNOWN,
|
| + XFA_FM_EXPTYPE_FUNC,
|
| + XFA_FM_EXPTYPE_VAR,
|
| + XFA_FM_EXPTYPE_EXP,
|
| + XFA_FM_EXPTYPE_BLOCK,
|
| + XFA_FM_EXPTYPE_IF,
|
| + XFA_FM_EXPTYPE_BREAK,
|
| + XFA_FM_EXPTYPE_CONTINUE,
|
| +};
|
| +class CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMExpression(FX_DWORD line);
|
| + CXFA_FMExpression(FX_DWORD line, XFA_FM_EXPTYPE type);
|
| + virtual ~CXFA_FMExpression(){};
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| + FX_DWORD GetLine() { return m_line; }
|
| + XFA_FM_EXPTYPE GetExpType() const { return m_type; }
|
| +
|
| + protected:
|
| + XFA_FM_EXPTYPE m_type;
|
| + FX_DWORD m_line;
|
| +};
|
| +class CXFA_FMFunctionDefinition : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMFunctionDefinition(FX_DWORD line,
|
| + FX_BOOL isGlobal,
|
| + const CFX_WideStringC& wsName,
|
| + CFX_WideStringCArray* pArguments,
|
| + CFX_PtrArray* pExpressions);
|
| + virtual ~CXFA_FMFunctionDefinition();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CFX_WideStringC m_wsName;
|
| + CFX_WideStringCArray* m_pArguments;
|
| + CFX_PtrArray* m_pExpressions;
|
| + FX_BOOL m_isGlobal;
|
| +};
|
| +class CXFA_FMVarExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMVarExpression(FX_DWORD line,
|
| + const CFX_WideStringC& wsName,
|
| + CXFA_FMExpression* pInit);
|
| + virtual ~CXFA_FMVarExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CFX_WideStringC m_wsName;
|
| + CXFA_FMExpression* m_pInit;
|
| +};
|
| +class CXFA_FMExpExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMExpExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExpression);
|
| + virtual ~CXFA_FMExpExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CXFA_FMSimpleExpression* m_pExpression;
|
| +};
|
| +class CXFA_FMBlockExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMBlockExpression(FX_DWORD line, CFX_PtrArray* pExpressionList);
|
| + virtual ~CXFA_FMBlockExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CFX_PtrArray* m_pExpressionList;
|
| +};
|
| +class CXFA_FMDoExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMDoExpression(FX_DWORD line, CXFA_FMExpression* pList);
|
| + virtual ~CXFA_FMDoExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CXFA_FMExpression* m_pList;
|
| +};
|
| +class CXFA_FMIfExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMIfExpression(FX_DWORD line,
|
| + CXFA_FMSimpleExpression* pExpression,
|
| + CXFA_FMExpression* pIfExpression,
|
| + CXFA_FMExpression* pElseExpression);
|
| + virtual ~CXFA_FMIfExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CXFA_FMSimpleExpression* m_pExpression;
|
| + CXFA_FMExpression* m_pIfExpression;
|
| + CXFA_FMExpression* m_pElseExpression;
|
| +};
|
| +class CXFA_FMLoopExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMLoopExpression(FX_DWORD line) : CXFA_FMExpression(line) {}
|
| + virtual ~CXFA_FMLoopExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +};
|
| +class CXFA_FMWhileExpression : public CXFA_FMLoopExpression {
|
| + public:
|
| + CXFA_FMWhileExpression(FX_DWORD line,
|
| + CXFA_FMSimpleExpression* pCodition,
|
| + CXFA_FMExpression* pExpression);
|
| + virtual ~CXFA_FMWhileExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CXFA_FMSimpleExpression* m_pCondition;
|
| + CXFA_FMExpression* m_pExpression;
|
| +};
|
| +class CXFA_FMBreakExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMBreakExpression(FX_DWORD line);
|
| + virtual ~CXFA_FMBreakExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +};
|
| +class CXFA_FMContinueExpression : public CXFA_FMExpression {
|
| + public:
|
| + CXFA_FMContinueExpression(FX_DWORD line);
|
| + virtual ~CXFA_FMContinueExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +};
|
| +class CXFA_FMForExpression : public CXFA_FMLoopExpression {
|
| + public:
|
| + CXFA_FMForExpression(FX_DWORD line,
|
| + const CFX_WideStringC& wsVariant,
|
| + CXFA_FMSimpleExpression* pAssignment,
|
| + CXFA_FMSimpleExpression* pAccessor,
|
| + int32_t iDirection,
|
| + CXFA_FMSimpleExpression* pStep,
|
| + CXFA_FMExpression* pList);
|
| + virtual ~CXFA_FMForExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CFX_WideStringC m_wsVariant;
|
| + CXFA_FMSimpleExpression* m_pAssignment;
|
| + CXFA_FMSimpleExpression* m_pAccessor;
|
| + int32_t m_iDirection;
|
| + CXFA_FMSimpleExpression* m_pStep;
|
| + CXFA_FMExpression* m_pList;
|
| +};
|
| +class CXFA_FMForeachExpression : public CXFA_FMLoopExpression {
|
| + public:
|
| + CXFA_FMForeachExpression(FX_DWORD line,
|
| + const CFX_WideStringC& wsIdentifier,
|
| + CFX_PtrArray* pAccessors,
|
| + CXFA_FMExpression* pList);
|
| + virtual ~CXFA_FMForeachExpression();
|
| + virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + virtual void ToImpliedReturnJS(CFX_WideTextBuf&);
|
| +
|
| + private:
|
| + CFX_WideStringC m_wsIdentifier;
|
| + CFX_PtrArray* m_pAccessors;
|
| + CXFA_FMExpression* m_pList;
|
| +};
|
| +#endif
|
|
|