| Index: xfa/src/fxfa/src/fm2js/xfa_simpleexpression.h
|
| diff --git a/xfa/src/fxfa/src/fm2js/xfa_simpleexpression.h b/xfa/src/fxfa/src/fm2js/xfa_simpleexpression.h
|
| index f4740043001ab6a7a1e9ff9015cbe463dcc68950..2fb9b8fc1cc4fc07e810abda6d990f8dfbb374a7 100644
|
| --- a/xfa/src/fxfa/src/fm2js/xfa_simpleexpression.h
|
| +++ b/xfa/src/fxfa/src/fm2js/xfa_simpleexpression.h
|
| @@ -36,27 +36,21 @@ enum XFA_FM_SimpleExpressionType {
|
| GETFMJSOBJ,
|
| VARFILTER
|
| };
|
| +
|
| CFX_WideStringC XFA_FM_EXPTypeToString(
|
| XFA_FM_SimpleExpressionType simpleExpType);
|
| -struct XFA_FMBuildInFunc {
|
| - uint32_t m_uHash;
|
| - const FX_WCHAR* m_buildinfunc;
|
| -};
|
| -struct XFA_FMSOMMethod {
|
| - uint32_t m_uHash;
|
| - const FX_WCHAR* m_wsSomMethodName;
|
| - FX_DWORD m_dParameters;
|
| -};
|
| +
|
| enum XFA_FM_AccessorIndex {
|
| ACCESSOR_NO_INDEX,
|
| ACCESSOR_NO_RELATIVEINDEX,
|
| ACCESSOR_POSITIVE_INDEX,
|
| ACCESSOR_NEGATIVE_INDEX
|
| };
|
| +
|
| class CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMSimpleExpression(FX_DWORD line, XFA_FM_TOKEN op);
|
| - virtual ~CXFA_FMSimpleExpression(){};
|
| + virtual ~CXFA_FMSimpleExpression() {}
|
| virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| virtual void ToImpliedReturnJS(CFX_WideTextBuf& javascript);
|
|
|
| @@ -66,160 +60,178 @@ class CXFA_FMSimpleExpression {
|
| FX_DWORD m_line;
|
| XFA_FM_TOKEN m_op;
|
| };
|
| +
|
| class CXFA_FMNullExpression : public CXFA_FMSimpleExpression {
|
| public:
|
| - CXFA_FMNullExpression(FX_DWORD line);
|
| - virtual ~CXFA_FMNullExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + explicit CXFA_FMNullExpression(FX_DWORD line);
|
| + ~CXFA_FMNullExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMNumberExpression : public CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMNumberExpression(FX_DWORD line, CFX_WideStringC wsNumber);
|
| - virtual ~CXFA_FMNumberExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMNumberExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| CFX_WideStringC m_wsNumber;
|
| };
|
| +
|
| class CXFA_FMStringExpression : public CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMStringExpression(FX_DWORD line, CFX_WideStringC wsString);
|
| - virtual ~CXFA_FMStringExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMStringExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| CFX_WideStringC m_wsString;
|
| };
|
| +
|
| class CXFA_FMIdentifierExpressionn : public CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMIdentifierExpressionn(FX_DWORD line, CFX_WideStringC wsIdentifier);
|
| - virtual ~CXFA_FMIdentifierExpressionn(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMIdentifierExpressionn() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| CFX_WideStringC m_wsIdentifier;
|
| };
|
| +
|
| class CXFA_FMUnaryExpression : public CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMUnaryExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp);
|
| - virtual ~CXFA_FMUnaryExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMUnaryExpression() override;
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| protected:
|
| CXFA_FMSimpleExpression* m_pExp;
|
| };
|
| +
|
| class CXFA_FMBinExpression : public CXFA_FMSimpleExpression {
|
| public:
|
| CXFA_FMBinExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMBinExpression();
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMBinExpression() override;
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| protected:
|
| CXFA_FMSimpleExpression* m_pExp1;
|
| CXFA_FMSimpleExpression* m_pExp2;
|
| };
|
| +
|
| class CXFA_FMAssignExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMAssignExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMAssignExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| - virtual void ToImpliedReturnJS(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMAssignExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| + void ToImpliedReturnJS(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMLogicalOrExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMLogicalOrExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMLogicalOrExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMLogicalOrExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMLogicalAndExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMLogicalAndExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMLogicalAndExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMLogicalAndExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMEqualityExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMEqualityExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMEqualityExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMEqualityExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMRelationalExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMRelationalExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMRelationalExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMRelationalExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMAdditiveExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMAdditiveExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMAdditiveExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMAdditiveExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMMultiplicativeExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMMultiplicativeExpression(FX_DWORD line,
|
| XFA_FM_TOKEN op,
|
| CXFA_FMSimpleExpression* pExp1,
|
| CXFA_FMSimpleExpression* pExp2);
|
| - virtual ~CXFA_FMMultiplicativeExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMMultiplicativeExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMPosExpression : public CXFA_FMUnaryExpression {
|
| public:
|
| CXFA_FMPosExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExp);
|
| - virtual ~CXFA_FMPosExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMPosExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMNegExpression : public CXFA_FMUnaryExpression {
|
| public:
|
| CXFA_FMNegExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExp);
|
| - virtual ~CXFA_FMNegExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMNegExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMNotExpression : public CXFA_FMUnaryExpression {
|
| public:
|
| CXFA_FMNotExpression(FX_DWORD line, CXFA_FMSimpleExpression* pExp);
|
| - virtual ~CXFA_FMNotExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMNotExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
| +
|
| class CXFA_FMCallExpression : public CXFA_FMUnaryExpression {
|
| public:
|
| CXFA_FMCallExpression(FX_DWORD line,
|
| CXFA_FMSimpleExpression* pExp,
|
| CFX_PtrArray* pArguments,
|
| FX_BOOL bIsSomMethod);
|
| - virtual ~CXFA_FMCallExpression();
|
| - virtual FX_BOOL IsBuildInFunc(CFX_WideTextBuf& funcName);
|
| - virtual FX_DWORD IsSomMethodWithObjPara(const CFX_WideStringC& methodName);
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMCallExpression() override;
|
| + bool IsBuildInFunc(CFX_WideTextBuf* funcName);
|
| + FX_DWORD IsMethodWithObjParam(const CFX_WideStringC& methodName);
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| private:
|
| FX_BOOL m_bIsSomMethod;
|
| CFX_PtrArray* m_pArguments;
|
| };
|
| +
|
| class CXFA_FMDotAccessorExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMDotAccessorExpression(FX_DWORD line,
|
| @@ -227,25 +239,27 @@ class CXFA_FMDotAccessorExpression : public CXFA_FMBinExpression {
|
| XFA_FM_TOKEN op,
|
| CFX_WideStringC wsIdentifier,
|
| CXFA_FMSimpleExpression* pIndexExp);
|
| - virtual ~CXFA_FMDotAccessorExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMDotAccessorExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| CFX_WideStringC m_wsIdentifier;
|
| };
|
| +
|
| class CXFA_FMIndexExpression : public CXFA_FMUnaryExpression {
|
| public:
|
| CXFA_FMIndexExpression(FX_DWORD line,
|
| XFA_FM_AccessorIndex accessorIndex,
|
| CXFA_FMSimpleExpression* pIndexExp,
|
| FX_BOOL bIsStarIndex);
|
| - virtual ~CXFA_FMIndexExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMIndexExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| XFA_FM_AccessorIndex m_accessorIndex;
|
| FX_BOOL m_bIsStarIndex;
|
| };
|
| +
|
| class CXFA_FMDotDotAccessorExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMDotDotAccessorExpression(FX_DWORD line,
|
| @@ -253,21 +267,20 @@ class CXFA_FMDotDotAccessorExpression : public CXFA_FMBinExpression {
|
| XFA_FM_TOKEN op,
|
| CFX_WideStringC wsIdentifier,
|
| CXFA_FMSimpleExpression* pIndexExp);
|
| - virtual ~CXFA_FMDotDotAccessorExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| + ~CXFA_FMDotDotAccessorExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
|
|
| - protected:
|
| + private:
|
| CFX_WideStringC m_wsIdentifier;
|
| };
|
| +
|
| class CXFA_FMMethodCallExpression : public CXFA_FMBinExpression {
|
| public:
|
| CXFA_FMMethodCallExpression(FX_DWORD line,
|
| CXFA_FMSimpleExpression* pAccessorExp1,
|
| CXFA_FMSimpleExpression* pCallExp);
|
| - virtual ~CXFA_FMMethodCallExpression(){};
|
| - virtual void ToJavaScript(CFX_WideTextBuf& javascript);
|
| -
|
| - protected:
|
| + ~CXFA_FMMethodCallExpression() override {}
|
| + void ToJavaScript(CFX_WideTextBuf& javascript) override;
|
| };
|
|
|
| #endif // XFA_SRC_FXFA_SRC_FM2JS_XFA_SIMPLEEXPRESSION_H_
|
|
|