summaryrefslogtreecommitdiff
path: root/Source/WebCore/xml/XPathFunctions.h
diff options
context:
space:
mode:
authorKonstantin Tokarev <annulen@yandex.ru>2016-08-25 19:20:41 +0300
committerKonstantin Tokarev <annulen@yandex.ru>2017-02-02 12:30:55 +0000
commit6882a04fb36642862b11efe514251d32070c3d65 (patch)
treeb7959826000b061fd5ccc7512035c7478742f7b0 /Source/WebCore/xml/XPathFunctions.h
parentab6df191029eeeb0b0f16f127d553265659f739e (diff)
downloadqtwebkit-6882a04fb36642862b11efe514251d32070c3d65.tar.gz
Imported QtWebKit TP3 (git b57bc6801f1876c3220d5a4bfea33d620d477443)
Change-Id: I3b1d8a2808782c9f34d50240000e20cb38d3680f Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Diffstat (limited to 'Source/WebCore/xml/XPathFunctions.h')
-rw-r--r--Source/WebCore/xml/XPathFunctions.h32
1 files changed, 14 insertions, 18 deletions
diff --git a/Source/WebCore/xml/XPathFunctions.h b/Source/WebCore/xml/XPathFunctions.h
index 08698a75b..94347a26a 100644
--- a/Source/WebCore/xml/XPathFunctions.h
+++ b/Source/WebCore/xml/XPathFunctions.h
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2005 Frerich Raabe <raabe@kde.org>
- * Copyright (C) 2006, 2009 Apple Inc.
+ * Copyright (C) 2006, 2009, 2013 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -30,27 +30,23 @@
#include "XPathExpressionNode.h"
namespace WebCore {
+namespace XPath {
- namespace XPath {
+class Function : public Expression {
+public:
+ static std::unique_ptr<Function> create(const String& name);
+ static std::unique_ptr<Function> create(const String& name, Vector<std::unique_ptr<Expression>> arguments);
- class Function : public Expression {
- public:
- void setArguments(const Vector<Expression*>&);
- void setName(const String& name) { m_name = name; }
- protected:
- Expression* arg(int pos) { return subExpr(pos); }
- const Expression* arg(int pos) const { return subExpr(pos); }
- unsigned int argCount() const { return subExprCount(); }
- String name() const { return m_name; }
+protected:
+ unsigned argumentCount() const { return subexpressionCount(); }
+ const Expression& argument(unsigned i) const { return subexpression(i); }
- private:
- String m_name;
- };
-
- Function* createFunction(const String& name, const Vector<Expression*>& args = Vector<Expression*>());
-
- } // namespace XPath
+private:
+ static std::unique_ptr<Function> create(const String& name, unsigned numArguments);
+ void setArguments(const String& name, Vector<std::unique_ptr<Expression>>);
+};
+} // namespace XPath
} // namespace WebCore
#endif // XPathFunctions_h