00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef XPATH_FUNCTION_H
00024 #define XPATH_FUNCTION_H
00025
00026 #include "xpath_exprnode.h"
00027
00028 namespace XPath {
00029
00033 class FunctionCall : public ExprNode
00034 {
00035 public:
00036 enum FunctionCallId {
00037 FunctionBoolean, FunctionCeiling, FunctionConcat, FunctionContains,
00038 FunctionCount, FunctionFalse, FunctionFloor, FunctionId, FunctionLang,
00039 FunctionLast, FunctionLocalName, FunctionName, FunctionNamespaceURI,
00040 FunctionNormalizeSpace, FunctionNot, FunctionNumber, FunctionPosition,
00041 FunctionRound, FunctionStartsWith, FunctionString, FunctionStringLength,
00042 FunctionSubstring, FunctionSubstringAfter, FunctionSubstringBefore,
00043 FunctionSum, FunctionTranslate, FunctionTrue
00044 };
00045
00046 FunctionCall( FunctionCallId func );
00047 ~FunctionCall();
00048
00049 virtual Value evaluate() const;
00050
00051 private:
00052 FunctionCallId id;
00053 };
00054
00055 }
00056
00057 #endif // XPATH_FUNCTION_H
00058
00059
00060
00061