diff options
Diffstat (limited to 'xfa/fxfa/fm2js/cxfa_fmexpression.h')
-rw-r--r-- | xfa/fxfa/fm2js/cxfa_fmexpression.h | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/xfa/fxfa/fm2js/cxfa_fmexpression.h b/xfa/fxfa/fm2js/cxfa_fmexpression.h deleted file mode 100644 index 2761ef56a..000000000 --- a/xfa/fxfa/fm2js/cxfa_fmexpression.h +++ /dev/null @@ -1,187 +0,0 @@ -// 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_FXFA_FM2JS_CXFA_FMEXPRESSION_H_ -#define XFA_FXFA_FM2JS_CXFA_FMEXPRESSION_H_ - -#include <memory> -#include <vector> - -#include "xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h" - -class CFX_WideTextBuf; - -class CXFA_FMExpression { - public: - virtual ~CXFA_FMExpression() = default; - virtual bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) = 0; - - protected: - CXFA_FMExpression(); -}; - -class CXFA_FMFunctionDefinition final : public CXFA_FMExpression { - public: - CXFA_FMFunctionDefinition( - WideStringView wsName, - std::vector<WideStringView>&& arguments, - std::vector<std::unique_ptr<CXFA_FMExpression>>&& expressions); - ~CXFA_FMFunctionDefinition() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - WideStringView m_wsName; - std::vector<WideStringView> m_pArguments; - std::vector<std::unique_ptr<CXFA_FMExpression>> m_pExpressions; -}; - -class CXFA_FMAST { - public: - explicit CXFA_FMAST( - std::vector<std::unique_ptr<CXFA_FMExpression>> expressions); - ~CXFA_FMAST(); - - bool ToJavaScript(CFX_WideTextBuf* js); - - private: - std::vector<std::unique_ptr<CXFA_FMExpression>> expressions_; -}; - -class CXFA_FMVarExpression final : public CXFA_FMExpression { - public: - CXFA_FMVarExpression(WideStringView wsName, - std::unique_ptr<CXFA_FMSimpleExpression> pInit); - ~CXFA_FMVarExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - WideStringView m_wsName; - std::unique_ptr<CXFA_FMSimpleExpression> m_pInit; -}; - -class CXFA_FMExpExpression final : public CXFA_FMExpression { - public: - explicit CXFA_FMExpExpression( - std::unique_ptr<CXFA_FMSimpleExpression> pExpression); - ~CXFA_FMExpExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression; -}; - -class CXFA_FMBlockExpression final : public CXFA_FMExpression { - public: - CXFA_FMBlockExpression( - std::vector<std::unique_ptr<CXFA_FMExpression>>&& pExpressionList); - ~CXFA_FMBlockExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - std::vector<std::unique_ptr<CXFA_FMExpression>> m_ExpressionList; -}; - -class CXFA_FMDoExpression final : public CXFA_FMExpression { - public: - explicit CXFA_FMDoExpression(std::unique_ptr<CXFA_FMExpression> pList); - ~CXFA_FMDoExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - std::unique_ptr<CXFA_FMExpression> m_pList; -}; - -class CXFA_FMIfExpression final : public CXFA_FMExpression { - public: - CXFA_FMIfExpression( - std::unique_ptr<CXFA_FMSimpleExpression> pExpression, - std::unique_ptr<CXFA_FMExpression> pIfExpression, - std::vector<std::unique_ptr<CXFA_FMIfExpression>> pElseIfExpressions, - std::unique_ptr<CXFA_FMExpression> pElseExpression); - ~CXFA_FMIfExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression; - std::unique_ptr<CXFA_FMExpression> m_pIfExpression; - std::vector<std::unique_ptr<CXFA_FMIfExpression>> m_pElseIfExpressions; - std::unique_ptr<CXFA_FMExpression> m_pElseExpression; -}; - -class CXFA_FMWhileExpression final : public CXFA_FMExpression { - public: - CXFA_FMWhileExpression(std::unique_ptr<CXFA_FMSimpleExpression> pCodition, - std::unique_ptr<CXFA_FMExpression> pExpression); - ~CXFA_FMWhileExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - std::unique_ptr<CXFA_FMSimpleExpression> m_pCondition; - std::unique_ptr<CXFA_FMExpression> m_pExpression; -}; - -class CXFA_FMBreakExpression final : public CXFA_FMExpression { - public: - CXFA_FMBreakExpression(); - ~CXFA_FMBreakExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; -}; - -class CXFA_FMContinueExpression final : public CXFA_FMExpression { - public: - CXFA_FMContinueExpression(); - ~CXFA_FMContinueExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; -}; - -class CXFA_FMForExpression final : public CXFA_FMExpression { - public: - CXFA_FMForExpression(WideStringView wsVariant, - std::unique_ptr<CXFA_FMSimpleExpression> pAssignment, - std::unique_ptr<CXFA_FMSimpleExpression> pAccessor, - int32_t iDirection, - std::unique_ptr<CXFA_FMSimpleExpression> pStep, - std::unique_ptr<CXFA_FMExpression> pList); - ~CXFA_FMForExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - WideStringView m_wsVariant; - std::unique_ptr<CXFA_FMSimpleExpression> m_pAssignment; - std::unique_ptr<CXFA_FMSimpleExpression> m_pAccessor; - const bool m_bDirection; - std::unique_ptr<CXFA_FMSimpleExpression> m_pStep; - std::unique_ptr<CXFA_FMExpression> m_pList; -}; - -class CXFA_FMForeachExpression final : public CXFA_FMExpression { - public: - // Takes ownership of |pAccessors|. - CXFA_FMForeachExpression( - WideStringView wsIdentifier, - std::vector<std::unique_ptr<CXFA_FMSimpleExpression>>&& pAccessors, - std::unique_ptr<CXFA_FMExpression> pList); - ~CXFA_FMForeachExpression() override; - - bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override; - - private: - WideStringView m_wsIdentifier; - std::vector<std::unique_ptr<CXFA_FMSimpleExpression>> m_pAccessors; - std::unique_ptr<CXFA_FMExpression> m_pList; -}; - -#endif // XFA_FXFA_FM2JS_CXFA_FMEXPRESSION_H_ |