zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #08980
[Merge] lp:~zorba-coders/zorba/xquery3.0_funcs into lp:zorba
Matthias Brantner has proposed merging lp:~zorba-coders/zorba/xquery3.0_funcs into lp:zorba.
Requested reviews:
Matthias Brantner (matthias-brantner)
Related bugs:
Bug #950616 in Zorba: "XQuery 3.0 vs Zorba: has-children#0 not implemented"
https://bugs.launchpad.net/zorba/+bug/950616
Bug #950617 in Zorba: "XQuery 3.0 vs Zorba: nilled#0 not implemented"
https://bugs.launchpad.net/zorba/+bug/950617
Bug #950618 in Zorba: "XQuery 3.0 vs Zorba: path not implemented"
https://bugs.launchpad.net/zorba/+bug/950618
For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/xquery3.0_funcs/+merge/104331
Added XQuery 3.0 Functions
path, has-children#0, nilled#0
--
The attached diff has been truncated due to its size.
https://code.launchpad.net/~zorba-coders/zorba/xquery3.0_funcs/+merge/104331
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'ChangeLog'
--- ChangeLog 2012-05-01 15:54:27 +0000
+++ ChangeLog 2012-05-02 06:48:21 +0000
@@ -3,11 +3,15 @@
version 2.5
New Features:
- * fn:available-environment-variables
- * fn:environment-variables
- * fn:uri-collection
- * fn:unparsed-text
- * fn:unparsed-text-available
+ * XQuery 3.0 functions
+ - fn:available-environment-variables
+ - fn:environment-variables
+ - fn:uri-collection
+ - fn:unparsed-text
+ - fn:unparsed-text-available
+ - fn:has-children#0
+ - fn:nilled#0
+ - fn:path
* Extended API for Python, Java, PHP and Ruby.
* Add jvm classpath to zorbacmd and to Zorba API. Tracked by #931816
* Added full-text module.
@@ -15,14 +19,11 @@
* Added XQJ support.
* Added CollectionManager and DocumentManager support for XQJ.
-Optimization:
-
Bug Fixes/Other Changes:
* Fixed bugs #931501 and #866987 (improved error messages for fn:format-number(). Additionally, the function now throws the FODF1310 error instead of XTDE1310, as the 3.0 spec requires)
* Fixed bug 955170 (Catch clause with URILiteral-based wilcard NameTest)
* Fixed bug 955135 (err:XQDY0044 not caught by try-catch expressions)
- * Fixed bug #986075 (encountering flwor expr with no clauses; due to common
- subexression being formed when inlining var in if-then-else expression)
+ * Fixed bug #986075 (encountering flwor expr with no clauses; due to common subexression being formed when inlining var in if-then-else expression)
* Fixed bug #967864 (var substitution did not update theFreeVars property)
* Fixed bug #891650 (context size var not always declared within path expr)
* Fixed bug #948879 (--uri-path doesn't work with fetch:content())
@@ -36,17 +37,14 @@
* Fixed bug #988412 (date:current-dateTime daylight saving)
* Fixed bug #912586, #912593 and #912722 (assertion failures with lax validation)
* Fixed bug #921458 (file:read-text-lines() blocking)
- * Fixed bug #981405 (do not hoist expr containing try-catch variables out of the
- associated try-catch expression)
- * Fixed bug #947627 (throw XQST0099 if more than one declarations of context item
- type in same module)
+ * Fixed bug #981405 (do not hoist expr containing try-catch variables out of the associated try-catch expression)
+ * Fixed bug #947627 (throw XQST0099 if more than one declarations of context item type in same module)
* Fixed bug #980526 (no-copy rule bug due to global var being set in "distant" udf)
* Fixed bug #949910 (has-children may be invoked on all nodes). Internally, zorba::store::Item::getChildren() now returns NULL on node classes without offspring (instead of raising an error).
- * Fixed Bug #933490: Error ItemFactoryImpl::createBase64Binary with istream
+ * Fixed Bug #933490 (Error ItemFactoryImpl::createBase64Binary with istream)
* Fixed bug #867112 (Diagnostic Handler was not working on external APIs)
* Fixed bug #857842 (Assertion failed with simple content element with comments)
-
version 2.2
New Features:
=== modified file 'modules/w3c/xpath_functions.xq'
--- modules/w3c/xpath_functions.xq 2012-04-24 12:39:38 +0000
+++ modules/w3c/xpath_functions.xq 2012-05-02 06:48:21 +0000
@@ -522,6 +522,12 @@
declare function fn:parse-xml( $arg as xs:string?, $baseURI as xs:string) as document-node(element(*, xs:untyped)) external;
(:~
+ : @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-parse-xml-fragment">fn:parse-xml-fragment</a>
+ :)
+declare function fn:parse-xml-fragment( $arg as xs:string?) as document-node(element(*, xs:untyped)) external;
+
+
+(:~
: @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-prefix-from-QName">fn:prefix-from-QName</a>
:)
declare function fn:prefix-from-QName($arg as xs:QName?) as xs:NCName? external;
@@ -864,6 +870,11 @@
(:~
: @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-has-children">fn:has-children</a>
:)
+declare function fn:has-children() as xs:boolean external;
+
+(:~
+ : @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-has-children">fn:has-children</a>
+ :)
declare function fn:has-children($node as node()?) as xs:boolean external;
(:~
@@ -923,12 +934,17 @@
(:~
: @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-namespace-uri">fn:namespace-uri</a>
- :)
+ :)
declare function fn:namespace-uri($arg as node()?) as xs:anyURI external;
(:~
: @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-nilled">fn:nilled</a>
:)
+declare function fn:nilled() as xs:boolean external;
+
+(:~
+ : @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-nilled">fn:nilled</a>
+ :)
declare function fn:nilled($arg as node()?) as xs:boolean? external;
(:~
=== modified file 'src/compiler/translator/translator.cpp'
--- src/compiler/translator/translator.cpp 2012-05-01 21:21:04 +0000
+++ src/compiler/translator/translator.cpp 2012-05-02 06:48:21 +0000
@@ -694,6 +694,10 @@
xquery_fns_def_dot.set(FunctionConsts::FN_DATA_0);
xquery_fns_def_dot.set(FunctionConsts::FN_DOCUMENT_URI_0);
xquery_fns_def_dot.set(FunctionConsts::FN_NODE_NAME_0);
+ xquery_fns_def_dot.set(FunctionConsts::FN_NILLED_0);
+ xquery_fns_def_dot.set(FunctionConsts::FN_HAS_CHILDREN_0);
+ xquery_fns_def_dot.set(FunctionConsts::FN_PATH_0);
+
op_concatenate = GET_BUILTIN_FUNCTION(OP_CONCATENATE_N);
assert(op_concatenate != NULL);
=== modified file 'src/functions/pregenerated/func_accessors.cpp'
--- src/functions/pregenerated/func_accessors.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_accessors.cpp 2012-05-02 06:48:21 +0000
@@ -50,6 +50,15 @@
return new NodeNameIterator(sctx, loc, argv);
}
+PlanIter_t fn_nilled_3_0::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new NilledIterator(sctx, loc, argv);
+}
PlanIter_t fn_nilled::codegen(
CompilerCB*,
static_context* sctx,
@@ -138,6 +147,17 @@
{
+ DECL_WITH_KIND(sctx, fn_nilled_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","nilled"),
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_NILLED_0);
+
+ }
+
+
+ {
+
+
DECL_WITH_KIND(sctx, fn_nilled,
(createQName("http://www.w3.org/2005/xpath-functions","","nilled"),
GENV_TYPESYSTEM.ANY_NODE_TYPE_QUESTION,
=== modified file 'src/functions/pregenerated/func_accessors.h'
--- src/functions/pregenerated/func_accessors.h 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_accessors.h 2012-05-02 06:48:21 +0000
@@ -72,6 +72,22 @@
//fn:nilled
+class fn_nilled_3_0 : public function
+{
+public:
+ fn_nilled_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+theXQueryVersion = StaticContextConsts::xquery_version_3_0;
+ }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return true; }
+
+ CODEGEN_DECL();
+};
+
+//fn:nilled
class fn_nilled : public function
{
public:
@@ -82,7 +98,7 @@
}
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return true; }
CODEGEN_DECL();
};
=== modified file 'src/functions/pregenerated/func_collections.cpp'
--- src/functions/pregenerated/func_collections.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_collections.cpp 2012-05-02 06:48:21 +0000
@@ -1,934 +1,901 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-
-#include "stdafx.h"
-#include "runtime/collections/collections.h"
-#include "functions/func_collections.h"
-
-
-namespace zorba{
-
-
-
-PlanIter_t fn_collection::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnCollectionIterator(sctx, loc, argv);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-PlanIter_t zorba_store_collections_static_dml_collection_name::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new ZorbaCollectionNameIterator(sctx, loc, argv);
-}
-
-
-
-PlanIter_t zorba_store_indexes_static_ddl_is_available_index::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IsAvailableIndexIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_indexes_static_ddl_available_indexes::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new AvailableIndexesIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IsActivatedICIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new ActivatedICsIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_collections_static_ddl_is_declared_collection::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IsDeclaredCollectionIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_collections_static_ddl_declared_collections::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new DeclaredCollectionsIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_indexes_static_ddl_is_declared_index::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IsDeclaredIndexIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_indexes_static_ddl_declared_indexes::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new DeclaredIndexesIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IsDeclaredICIterator(sctx, loc, argv);
-}
-
-PlanIter_t zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new DeclaredICsIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_uri_collection_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnURICollectionIterator(sctx, loc, argv);
-}
-
-void populate_context_collections(static_context* sctx)
-{
- {
-
-
- DECL_WITH_KIND(sctx, fn_collection,
- (createQName("http://www.w3.org/2005/xpath-functions","","collection"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_COLLECTION_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_collection,
- (createQName("http://www.w3.org/2005/xpath-functions","","collection"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","collection"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","collection"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_index_of,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","index-of"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INDEX_OF_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_index_of,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","index-of"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INDEX_OF_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","create"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_CREATE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","create"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_CREATE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","create"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_CREATE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","create"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_CREATE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_delete,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","delete"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_DELETE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_delete,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","delete"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_DELETE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_first,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_first,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_last,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_last,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_before,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-before"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_before,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-before"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_after,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-after"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_AFTER_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_after,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-after"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_AFTER_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_first,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_first,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_last,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_last,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_before,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-before"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_before,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-before"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_after,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-after"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_AFTER_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_after,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-after"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_AFTER_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_nodes,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_nodes,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-node-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODE_FIRST_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-node-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODE_FIRST_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes-first"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_FIRST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-node-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODE_LAST_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-node-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODE_LAST_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes-last"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_LAST_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_truncate,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","truncate"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_TRUNCATE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_truncate,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","truncate"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.EMPTY_TYPE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_TRUNCATE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection_name,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","collection-name"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.QNAME_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_COLLECTION_NAME_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection_name,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","collection-name"),
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.QNAME_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_COLLECTION_NAME_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_available_collection,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","is-available-collection"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_IS_AVAILABLE_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_available_collection,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","is-available-collection"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_IS_AVAILABLE_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_available_collections,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","available-collections"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_AVAILABLE_COLLECTIONS_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_available_collections,
- (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","available-collections"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_AVAILABLE_COLLECTIONS_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_is_available_index,
- (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","is-available-index"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_IS_AVAILABLE_INDEX_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_available_indexes,
- (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","available-indexes"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_AVAILABLE_INDEXES_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint,
- (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","is-activated-integrity-constraint"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_IS_ACTIVATED_INTEGRITY_CONSTRAINT_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints,
- (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","activated-integrity-constraints"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_ACTIVATED_INTEGRITY_CONSTRAINTS_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_declared_collection,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","is-declared-collection"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_IS_DECLARED_COLLECTION_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_declared_collections,
- (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","declared-collections"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_DECLARED_COLLECTIONS_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_is_declared_index,
- (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","is-declared-index"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_IS_DECLARED_INDEX_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_declared_indexes,
- (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","declared-indexes"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_DECLARED_INDEXES_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint,
- (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","is-declared-integrity-constraint"),
- GENV_TYPESYSTEM.QNAME_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_IS_DECLARED_INTEGRITY_CONSTRAINT_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints,
- (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","declared-integrity-constraints"),
- GENV_TYPESYSTEM.QNAME_TYPE_STAR),
- FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_DECLARED_INTEGRITY_CONSTRAINTS_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_uri_collection_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","uri-collection"),
- GENV_TYPESYSTEM.ANY_URI_TYPE_STAR),
- FunctionConsts::FN_URI_COLLECTION_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_uri_collection_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","uri-collection"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_URI_TYPE_STAR),
- FunctionConsts::FN_URI_COLLECTION_1);
-
- }
-
-}
-
-
-}
-
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+
+#include "stdafx.h"
+#include "runtime/collections/collections.h"
+#include "functions/func_collections.h"
+
+
+namespace zorba{
+
+
+
+PlanIter_t fn_collection::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnCollectionIterator(sctx, loc, argv);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+PlanIter_t zorba_store_collections_static_dml_collection_name::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new ZorbaCollectionNameIterator(sctx, loc, argv);
+}
+
+
+
+PlanIter_t zorba_store_indexes_static_ddl_is_available_index::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IsAvailableIndexIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_indexes_static_ddl_available_indexes::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new AvailableIndexesIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IsActivatedICIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new ActivatedICsIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_collections_static_ddl_is_declared_collection::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IsDeclaredCollectionIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_collections_static_ddl_declared_collections::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new DeclaredCollectionsIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_indexes_static_ddl_is_declared_index::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IsDeclaredIndexIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_indexes_static_ddl_declared_indexes::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new DeclaredIndexesIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IsDeclaredICIterator(sctx, loc, argv);
+}
+
+PlanIter_t zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new DeclaredICsIterator(sctx, loc, argv);
+}
+
+void populate_context_collections(static_context* sctx)
+{
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_collection,
+ (createQName("http://www.w3.org/2005/xpath-functions","","collection"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::FN_COLLECTION_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_collection,
+ (createQName("http://www.w3.org/2005/xpath-functions","","collection"),
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::FN_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","collection"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","collection"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_index_of,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","index-of"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INDEX_OF_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_index_of,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","index-of"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INDEX_OF_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","create"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_CREATE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","create"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_CREATE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","create"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_CREATE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_create,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","create"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_CREATE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_delete,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","delete"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_DELETE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_delete,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","delete"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_DELETE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_before,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-before"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_before,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-before"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_after,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","insert-nodes-after"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_INSERT_NODES_AFTER_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_insert_nodes_after,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","insert-nodes-after"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_INSERT_NODES_AFTER_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_before,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-before"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_before,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-before"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_after,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","apply-insert-nodes-after"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_APPLY_INSERT_NODES_AFTER_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_apply_insert_nodes_after,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","apply-insert-nodes-after"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_APPLY_INSERT_NODES_AFTER_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_nodes,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_nodes,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-node-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODE_FIRST_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-node-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODE_FIRST_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_first,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes-first"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_FIRST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-node-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODE_LAST_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","delete-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_DELETE_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-node-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODE_LAST_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_delete_node_last,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","delete-nodes-last"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_DELETE_NODES_LAST_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_truncate,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","truncate"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_TRUNCATE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_truncate,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","truncate"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.EMPTY_TYPE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_TRUNCATE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection_name,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/dml","","collection-name"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DML_COLLECTION_NAME_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_dml_collection_name,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/dml","","collection-name"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DML_COLLECTION_NAME_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_available_collection,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","is-available-collection"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_IS_AVAILABLE_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_available_collection,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","is-available-collection"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_IS_AVAILABLE_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_available_collections,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","available-collections"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_AVAILABLE_COLLECTIONS_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_available_collections,
+ (createQName("http://www.zorba-xquery.com/modules/store/dynamic/collections/ddl","","available-collections"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_DYNAMIC_COLLECTIONS_DDL_AVAILABLE_COLLECTIONS_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_is_available_index,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","is-available-index"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_IS_AVAILABLE_INDEX_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_available_indexes,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","available-indexes"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_AVAILABLE_INDEXES_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","is-activated-integrity-constraint"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_IS_ACTIVATED_INTEGRITY_CONSTRAINT_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","activated-integrity-constraints"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_ACTIVATED_INTEGRITY_CONSTRAINTS_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_is_declared_collection,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","is-declared-collection"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_IS_DECLARED_COLLECTION_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_collections_static_ddl_declared_collections,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/collections/ddl","","declared-collections"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_COLLECTIONS_STATIC_DDL_DECLARED_COLLECTIONS_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_is_declared_index,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","is-declared-index"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_IS_DECLARED_INDEX_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_indexes_static_ddl_declared_indexes,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/indexes/ddl","","declared-indexes"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_INDEXES_STATIC_DDL_DECLARED_INDEXES_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","is-declared-integrity-constraint"),
+ GENV_TYPESYSTEM.QNAME_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_IS_DECLARED_INTEGRITY_CONSTRAINT_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints,
+ (createQName("http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl","","declared-integrity-constraints"),
+ GENV_TYPESYSTEM.QNAME_TYPE_STAR),
+ FunctionConsts::ZORBA_STORE_INTEGRITY_CONSTRAINTS_STATIC_DDL_DECLARED_INTEGRITY_CONSTRAINTS_0);
+
+ }
+
+}
+
+
+}
+
+
+
=== modified file 'src/functions/pregenerated/func_collections.h'
--- src/functions/pregenerated/func_collections.h 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_collections.h 2012-05-02 06:48:21 +0000
@@ -1,690 +1,675 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-
-#ifndef ZORBA_FUNCTIONS_COLLECTIONS_H
-#define ZORBA_FUNCTIONS_COLLECTIONS_H
-
-
-#include "common/shared_types.h"
-#include "functions/function_impl.h"
-
-
-namespace zorba {
-
-
-void populate_context_collections(static_context* sctx);
-
-
-
-
-//fn:collection
-class fn_collection : public function
-{
-public:
- fn_collection(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool isSource() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:collection
-class zorba_store_collections_static_dml_collection : public function
-{
-public:
- zorba_store_collections_static_dml_collection(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool isSource() const { return true; }
-
- FunctionConsts::AnnotationValue producesDistinctNodes() const
- {
- return FunctionConsts::YES;
- }
-
- FunctionConsts::AnnotationValue producesSortedNodes() const
- {
- return FunctionConsts::YES;
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:index-of
-class zorba_store_collections_static_dml_index_of : public function
-{
-public:
- zorba_store_collections_static_dml_index_of(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:create
-class zorba_store_collections_static_ddl_create : public function
-{
-public:
- zorba_store_collections_static_ddl_create(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:delete
-class zorba_store_collections_static_ddl_delete : public function
-{
-public:
- zorba_store_collections_static_ddl_delete(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:insert-nodes
-class zorba_store_collections_static_dml_insert_nodes : public function
-{
-public:
- zorba_store_collections_static_dml_insert_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:insert-nodes-first
-class zorba_store_collections_static_dml_insert_nodes_first : public function
-{
-public:
- zorba_store_collections_static_dml_insert_nodes_first(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:insert-nodes-last
-class zorba_store_collections_static_dml_insert_nodes_last : public function
-{
-public:
- zorba_store_collections_static_dml_insert_nodes_last(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:insert-nodes-before
-class zorba_store_collections_static_dml_insert_nodes_before : public function
-{
-public:
- zorba_store_collections_static_dml_insert_nodes_before(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:insert-nodes-after
-class zorba_store_collections_static_dml_insert_nodes_after : public function
-{
-public:
- zorba_store_collections_static_dml_insert_nodes_after(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:apply-insert-nodes
-class zorba_store_collections_static_dml_apply_insert_nodes : public function
-{
-public:
- zorba_store_collections_static_dml_apply_insert_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return APPLYING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool propagatesInputNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:apply-insert-nodes-first
-class zorba_store_collections_static_dml_apply_insert_nodes_first : public function
-{
-public:
- zorba_store_collections_static_dml_apply_insert_nodes_first(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return APPLYING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool propagatesInputNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:apply-insert-nodes-last
-class zorba_store_collections_static_dml_apply_insert_nodes_last : public function
-{
-public:
- zorba_store_collections_static_dml_apply_insert_nodes_last(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return APPLYING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool propagatesInputNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:apply-insert-nodes-before
-class zorba_store_collections_static_dml_apply_insert_nodes_before : public function
-{
-public:
- zorba_store_collections_static_dml_apply_insert_nodes_before(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return APPLYING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool propagatesInputNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:apply-insert-nodes-after
-class zorba_store_collections_static_dml_apply_insert_nodes_after : public function
-{
-public:
- zorba_store_collections_static_dml_apply_insert_nodes_after(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return APPLYING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool propagatesInputNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:delete-nodes
-class zorba_store_collections_static_dml_delete_nodes : public function
-{
-public:
- zorba_store_collections_static_dml_delete_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 0; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:delete-node-first
-class zorba_store_collections_static_dml_delete_node_first : public function
-{
-public:
- zorba_store_collections_static_dml_delete_node_first(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:delete-node-last
-class zorba_store_collections_static_dml_delete_node_last : public function
-{
-public:
- zorba_store_collections_static_dml_delete_node_last(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:truncate
-class zorba_store_collections_static_dml_truncate : public function
-{
-public:
- zorba_store_collections_static_dml_truncate(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- short getScriptingKind() const { return UPDATING_EXPR; }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-dml:collection-name
-class zorba_store_collections_static_dml_collection_name : public function
-{
-public:
- zorba_store_collections_static_dml_collection_name(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:is-available-collection
-class zorba_store_collections_static_ddl_is_available_collection : public function
-{
-public:
- zorba_store_collections_static_ddl_is_available_collection(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:available-collections
-class zorba_store_collections_static_ddl_available_collections : public function
-{
-public:
- zorba_store_collections_static_ddl_available_collections(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-indexes-static-ddl:is-available-index
-class zorba_store_indexes_static_ddl_is_available_index : public function
-{
-public:
- zorba_store_indexes_static_ddl_is_available_index(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-indexes-static-ddl:available-indexes
-class zorba_store_indexes_static_ddl_available_indexes : public function
-{
-public:
- zorba_store_indexes_static_ddl_available_indexes(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-integrity_constraints-static-ddl:is-activated-integrity-constraint
-class zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint : public function
-{
-public:
- zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-integrity_constraints-static-ddl:activated-integrity-constraints
-class zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints : public function
-{
-public:
- zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:is-declared-collection
-class zorba_store_collections_static_ddl_is_declared_collection : public function
-{
-public:
- zorba_store_collections_static_ddl_is_declared_collection(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-collections-static-ddl:declared-collections
-class zorba_store_collections_static_ddl_declared_collections : public function
-{
-public:
- zorba_store_collections_static_ddl_declared_collections(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-indexes-static-ddl:is-declared-index
-class zorba_store_indexes_static_ddl_is_declared_index : public function
-{
-public:
- zorba_store_indexes_static_ddl_is_declared_index(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-indexes-static-ddl:declared-indexes
-class zorba_store_indexes_static_ddl_declared_indexes : public function
-{
-public:
- zorba_store_indexes_static_ddl_declared_indexes(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-integrity_constraints-static-ddl:is-declared-integrity-constraint
-class zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint : public function
-{
-public:
- zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//zorba-store-integrity_constraints-static-ddl:declared-integrity-constraints
-class zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints : public function
-{
-public:
- zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:uri-collection
-class fn_uri_collection_3_0 : public function
-{
-public:
- fn_uri_collection_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-} //namespace zorba
-
-
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+
+#ifndef ZORBA_FUNCTIONS_COLLECTIONS_H
+#define ZORBA_FUNCTIONS_COLLECTIONS_H
+
+
+#include "common/shared_types.h"
+#include "functions/function_impl.h"
+
+
+namespace zorba {
+
+
+void populate_context_collections(static_context* sctx);
+
+
+
+
+//fn:collection
+class fn_collection : public function
+{
+public:
+ fn_collection(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool isSource() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:collection
+class zorba_store_collections_static_dml_collection : public function
+{
+public:
+ zorba_store_collections_static_dml_collection(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool isSource() const { return true; }
+
+ FunctionConsts::AnnotationValue producesDistinctNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ FunctionConsts::AnnotationValue producesSortedNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:index-of
+class zorba_store_collections_static_dml_index_of : public function
+{
+public:
+ zorba_store_collections_static_dml_index_of(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:create
+class zorba_store_collections_static_ddl_create : public function
+{
+public:
+ zorba_store_collections_static_ddl_create(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:delete
+class zorba_store_collections_static_ddl_delete : public function
+{
+public:
+ zorba_store_collections_static_ddl_delete(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:insert-nodes
+class zorba_store_collections_static_dml_insert_nodes : public function
+{
+public:
+ zorba_store_collections_static_dml_insert_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:insert-nodes-first
+class zorba_store_collections_static_dml_insert_nodes_first : public function
+{
+public:
+ zorba_store_collections_static_dml_insert_nodes_first(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:insert-nodes-last
+class zorba_store_collections_static_dml_insert_nodes_last : public function
+{
+public:
+ zorba_store_collections_static_dml_insert_nodes_last(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:insert-nodes-before
+class zorba_store_collections_static_dml_insert_nodes_before : public function
+{
+public:
+ zorba_store_collections_static_dml_insert_nodes_before(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:insert-nodes-after
+class zorba_store_collections_static_dml_insert_nodes_after : public function
+{
+public:
+ zorba_store_collections_static_dml_insert_nodes_after(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:apply-insert-nodes
+class zorba_store_collections_static_dml_apply_insert_nodes : public function
+{
+public:
+ zorba_store_collections_static_dml_apply_insert_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return APPLYING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool propagatesInputNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:apply-insert-nodes-first
+class zorba_store_collections_static_dml_apply_insert_nodes_first : public function
+{
+public:
+ zorba_store_collections_static_dml_apply_insert_nodes_first(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return APPLYING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool propagatesInputNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:apply-insert-nodes-last
+class zorba_store_collections_static_dml_apply_insert_nodes_last : public function
+{
+public:
+ zorba_store_collections_static_dml_apply_insert_nodes_last(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return APPLYING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool propagatesInputNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:apply-insert-nodes-before
+class zorba_store_collections_static_dml_apply_insert_nodes_before : public function
+{
+public:
+ zorba_store_collections_static_dml_apply_insert_nodes_before(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return APPLYING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool propagatesInputNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:apply-insert-nodes-after
+class zorba_store_collections_static_dml_apply_insert_nodes_after : public function
+{
+public:
+ zorba_store_collections_static_dml_apply_insert_nodes_after(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return APPLYING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool propagatesInputNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 2; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:delete-nodes
+class zorba_store_collections_static_dml_delete_nodes : public function
+{
+public:
+ zorba_store_collections_static_dml_delete_nodes(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 0; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:delete-node-first
+class zorba_store_collections_static_dml_delete_node_first : public function
+{
+public:
+ zorba_store_collections_static_dml_delete_node_first(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:delete-node-last
+class zorba_store_collections_static_dml_delete_node_last : public function
+{
+public:
+ zorba_store_collections_static_dml_delete_node_last(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:truncate
+class zorba_store_collections_static_dml_truncate : public function
+{
+public:
+ zorba_store_collections_static_dml_truncate(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ short getScriptingKind() const { return UPDATING_EXPR; }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-dml:collection-name
+class zorba_store_collections_static_dml_collection_name : public function
+{
+public:
+ zorba_store_collections_static_dml_collection_name(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:is-available-collection
+class zorba_store_collections_static_ddl_is_available_collection : public function
+{
+public:
+ zorba_store_collections_static_ddl_is_available_collection(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:available-collections
+class zorba_store_collections_static_ddl_available_collections : public function
+{
+public:
+ zorba_store_collections_static_ddl_available_collections(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-indexes-static-ddl:is-available-index
+class zorba_store_indexes_static_ddl_is_available_index : public function
+{
+public:
+ zorba_store_indexes_static_ddl_is_available_index(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-indexes-static-ddl:available-indexes
+class zorba_store_indexes_static_ddl_available_indexes : public function
+{
+public:
+ zorba_store_indexes_static_ddl_available_indexes(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-integrity_constraints-static-ddl:is-activated-integrity-constraint
+class zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint : public function
+{
+public:
+ zorba_store_integrity_constraints_static_ddl_is_activated_integrity_constraint(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-integrity_constraints-static-ddl:activated-integrity-constraints
+class zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints : public function
+{
+public:
+ zorba_store_integrity_constraints_static_ddl_activated_integrity_constraints(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:is-declared-collection
+class zorba_store_collections_static_ddl_is_declared_collection : public function
+{
+public:
+ zorba_store_collections_static_ddl_is_declared_collection(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-collections-static-ddl:declared-collections
+class zorba_store_collections_static_ddl_declared_collections : public function
+{
+public:
+ zorba_store_collections_static_ddl_declared_collections(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-indexes-static-ddl:is-declared-index
+class zorba_store_indexes_static_ddl_is_declared_index : public function
+{
+public:
+ zorba_store_indexes_static_ddl_is_declared_index(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-indexes-static-ddl:declared-indexes
+class zorba_store_indexes_static_ddl_declared_indexes : public function
+{
+public:
+ zorba_store_indexes_static_ddl_declared_indexes(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-integrity_constraints-static-ddl:is-declared-integrity-constraint
+class zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint : public function
+{
+public:
+ zorba_store_integrity_constraints_static_ddl_is_declared_integrity_constraint(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//zorba-store-integrity_constraints-static-ddl:declared-integrity-constraints
+class zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints : public function
+{
+public:
+ zorba_store_integrity_constraints_static_ddl_declared_integrity_constraints(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+} //namespace zorba
+
+
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/functions/pregenerated/func_nodes.cpp'
--- src/functions/pregenerated/func_nodes.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_nodes.cpp 2012-05-02 06:48:21 +0000
@@ -231,6 +231,16 @@
return new LeastCommonAncestor(sctx, loc, argv);
}
+PlanIter_t fn_path_3_0::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnPathIterator(sctx, loc, argv);
+}
+
void populate_context_nodes(static_context* sctx)
{
{
@@ -356,6 +366,17 @@
DECL_WITH_KIND(sctx, fn_has_children_3_0,
(createQName("http://www.w3.org/2005/xpath-functions","","has-children"),
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_HAS_CHILDREN_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_has_children_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","has-children"),
GENV_TYPESYSTEM.ANY_NODE_TYPE_QUESTION,
GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
FunctionConsts::FN_HAS_CHILDREN_1);
@@ -538,6 +559,29 @@
}
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_path_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","path"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
+ FunctionConsts::FN_PATH_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_path_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","path"),
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
+ FunctionConsts::FN_PATH_1);
+
+ }
+
}
=== modified file 'src/functions/pregenerated/func_nodes.h'
--- src/functions/pregenerated/func_nodes.h 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_nodes.h 2012-05-02 06:48:21 +0000
@@ -372,6 +372,21 @@
};
+//fn:path
+class fn_path_3_0 : public function
+{
+public:
+ fn_path_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+theXQueryVersion = StaticContextConsts::xquery_version_3_0;
+ }
+
+ CODEGEN_DECL();
+};
+
+
} //namespace zorba
=== modified file 'src/functions/pregenerated/func_parse_fragment.cpp'
--- src/functions/pregenerated/func_parse_fragment.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_parse_fragment.cpp 2012-05-02 06:48:21 +0000
@@ -38,7 +38,7 @@
std::vector<PlanIter_t>& argv,
expr& ann) const
{
- return new FnParseXmlFragmentIterator(sctx, loc, argv);
+ return new FnZorbaParseXmlFragmentIterator(sctx, loc, argv);
}
void populate_context_parse_fragment(static_context* sctx)
=== modified file 'src/functions/pregenerated/func_sequences.cpp'
--- src/functions/pregenerated/func_sequences.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_sequences.cpp 2012-05-02 06:48:21 +0000
@@ -1,923 +1,775 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-
-#include "stdafx.h"
-#include "runtime/sequences/sequences.h"
-#include "functions/func_sequences.h"
-#include "system/globalenv.h"
-#include "types/typeops.h"
-#include "compiler/expression/expr_base.h"
-
-
-namespace zorba{
-
-
-
-PlanIter_t op_concatenate::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnConcatIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_index_of::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnIndexOfIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_empty::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnEmptyIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_exists::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnExistsIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_distinct_values::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnDistinctValuesIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_insert_before::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnInsertBeforeIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_remove::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnRemoveIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_reverse::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnReverseIterator(sctx, loc, argv);
-}
-
-
-
-
-
-PlanIter_t fn_one_or_more::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnOneOrMoreIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_deep_equal::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnDeepEqualIterator(sctx, loc, argv);
-}
-
-
-PlanIter_t fn_avg::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnAvgIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_sum::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnSumIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_sum_double::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnSumDoubleIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_sum_float::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnSumFloatIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_sum_decimal::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnSumDecimalIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_sum_integer::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnSumIntegerIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_to::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new OpToIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_id::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnIdIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_element_with_id::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnElementWithIdIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_idref::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnIdRefIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_doc::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnDocIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_doc_available::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnDocAvailableIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_available_environment_variables_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnAvailableEnvironmentVariablesIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_environment_variable_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnEnvironmentVariableIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_unparsed_text_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnUnparsedTextIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_unparsed_text_available_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnUnparsedTextAvailableIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_unparsed_text_lines_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnUnparsedTextLinesIterator(sctx, loc, argv);
-}
-
-void populate_context_sequences(static_context* sctx)
-{
- {
- std::vector<xqtref_t> lParamTypes;
- lParamTypes.push_back(GENV_TYPESYSTEM.ITEM_TYPE_STAR);
-
- DECL_WITH_KIND(sctx, op_concatenate,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","concatenate"),
- lParamTypes, GENV_TYPESYSTEM.ITEM_TYPE_STAR, true),
- FunctionConsts::OP_CONCATENATE_N);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_index_of,
- (createQName("http://www.w3.org/2005/xpath-functions","","index-of"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
- FunctionConsts::FN_INDEX_OF_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_index_of,
- (createQName("http://www.w3.org/2005/xpath-functions","","index-of"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
- FunctionConsts::FN_INDEX_OF_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_empty,
- (createQName("http://www.w3.org/2005/xpath-functions","","empty"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_EMPTY_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_exists,
- (createQName("http://www.w3.org/2005/xpath-functions","","exists"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_EXISTS_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_distinct_values,
- (createQName("http://www.w3.org/2005/xpath-functions","","distinct-values"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR),
- FunctionConsts::FN_DISTINCT_VALUES_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_distinct_values,
- (createQName("http://www.w3.org/2005/xpath-functions","","distinct-values"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR),
- FunctionConsts::FN_DISTINCT_VALUES_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_insert_before,
- (createQName("http://www.w3.org/2005/xpath-functions","","insert-before"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::FN_INSERT_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_remove,
- (createQName("http://www.w3.org/2005/xpath-functions","","remove"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::FN_REMOVE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_reverse,
- (createQName("http://www.w3.org/2005/xpath-functions","","reverse"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::FN_REVERSE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_subsequence,
- (createQName("http://www.w3.org/2005/xpath-functions","","subsequence"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::FN_SUBSEQUENCE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_subsequence,
- (createQName("http://www.w3.org/2005/xpath-functions","","subsequence"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::FN_SUBSEQUENCE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_zorba_subsequence_int,
- (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","subsequence-int"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::OP_ZORBA_SUBSEQUENCE_INT_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_zorba_subsequence_int,
- (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","subsequence-int"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR),
- FunctionConsts::OP_ZORBA_SUBSEQUENCE_INT_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_zorba_sequence_point_access,
- (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","sequence-point-access"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.ITEM_TYPE_QUESTION),
- FunctionConsts::OP_ZORBA_SEQUENCE_POINT_ACCESS_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_zero_or_one,
- (createQName("http://www.w3.org/2005/xpath-functions","","zero-or-one"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_QUESTION),
- FunctionConsts::FN_ZERO_OR_ONE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_one_or_more,
- (createQName("http://www.w3.org/2005/xpath-functions","","one-or-more"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_PLUS),
- FunctionConsts::FN_ONE_OR_MORE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_deep_equal,
- (createQName("http://www.w3.org/2005/xpath-functions","","deep-equal"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_DEEP_EQUAL_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_deep_equal,
- (createQName("http://www.w3.org/2005/xpath-functions","","deep-equal"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_DEEP_EQUAL_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_count,
- (createQName("http://www.w3.org/2005/xpath-functions","","count"),
- GENV_TYPESYSTEM.ITEM_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::FN_COUNT_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_avg,
- (createQName("http://www.w3.org/2005/xpath-functions","","avg"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::FN_AVG_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_sum,
- (createQName("http://www.w3.org/2005/xpath-functions","","sum"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE),
- FunctionConsts::FN_SUM_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_sum,
- (createQName("http://www.w3.org/2005/xpath-functions","","sum"),
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::FN_SUM_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_double,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_double"),
- GENV_TYPESYSTEM.DOUBLE_TYPE_STAR,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE),
- FunctionConsts::OP_SUM_DOUBLE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_double,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_double"),
- GENV_TYPESYSTEM.DOUBLE_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::OP_SUM_DOUBLE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_float,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_float"),
- GENV_TYPESYSTEM.FLOAT_TYPE_STAR,
- GENV_TYPESYSTEM.FLOAT_TYPE_ONE),
- FunctionConsts::OP_SUM_FLOAT_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_float,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_float"),
- GENV_TYPESYSTEM.FLOAT_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::OP_SUM_FLOAT_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_decimal,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_decimal"),
- GENV_TYPESYSTEM.DECIMAL_TYPE_STAR,
- GENV_TYPESYSTEM.DECIMAL_TYPE_ONE),
- FunctionConsts::OP_SUM_DECIMAL_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_decimal,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_decimal"),
- GENV_TYPESYSTEM.DECIMAL_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::OP_SUM_DECIMAL_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_integer,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_integer"),
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::OP_SUM_INTEGER_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_sum_integer,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_integer"),
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
- GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
- FunctionConsts::OP_SUM_INTEGER_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_to,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","to"),
- GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
- FunctionConsts::OP_TO_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_id,
- (createQName("http://www.w3.org/2005/xpath-functions","","id"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
- FunctionConsts::FN_ID_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_id,
- (createQName("http://www.w3.org/2005/xpath-functions","","id"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
- FunctionConsts::FN_ID_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_element_with_id,
- (createQName("http://www.w3.org/2005/xpath-functions","","element-with-id"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
- FunctionConsts::FN_ELEMENT_WITH_ID_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_element_with_id,
- (createQName("http://www.w3.org/2005/xpath-functions","","element-with-id"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
- FunctionConsts::FN_ELEMENT_WITH_ID_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_idref,
- (createQName("http://www.w3.org/2005/xpath-functions","","idref"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_IDREF_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_idref,
- (createQName("http://www.w3.org/2005/xpath-functions","","idref"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
- GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
- FunctionConsts::FN_IDREF_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_doc,
- (createQName("http://www.w3.org/2005/xpath-functions","","doc"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.DOCUMENT_UNTYPED_TYPE_QUESTION),
- FunctionConsts::FN_DOC_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_doc_available,
- (createQName("http://www.w3.org/2005/xpath-functions","","doc-available"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_DOC_AVAILABLE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_available_environment_variables_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","available-environment-variables"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_AVAILABLE_ENVIRONMENT_VARIABLES_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_environment_variable_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","environment-variable"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
- FunctionConsts::FN_ENVIRONMENT_VARIABLE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
- FunctionConsts::FN_UNPARSED_TEXT_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
- FunctionConsts::FN_UNPARSED_TEXT_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_available_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text-available"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
- FunctionConsts::FN_UNPARSED_TEXT_AVAILABLE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_available_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text-available"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION),
- FunctionConsts::FN_UNPARSED_TEXT_AVAILABLE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_lines_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text-lines"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_UNPARSED_TEXT_LINES_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_unparsed_text_lines_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","unparsed-text-lines"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_UNPARSED_TEXT_LINES_2);
-
- }
-
-}
-
-
-}
-
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+
+#include "stdafx.h"
+#include "runtime/sequences/sequences.h"
+#include "functions/func_sequences.h"
+#include "system/globalenv.h"
+#include "types/typeops.h"
+#include "compiler/expression/expr_base.h"
+
+
+namespace zorba{
+
+
+
+PlanIter_t op_concatenate::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnConcatIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_index_of::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnIndexOfIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_empty::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnEmptyIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_exists::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnExistsIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_distinct_values::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnDistinctValuesIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_insert_before::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnInsertBeforeIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_remove::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnRemoveIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_reverse::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnReverseIterator(sctx, loc, argv);
+}
+
+
+
+
+
+PlanIter_t fn_one_or_more::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnOneOrMoreIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_deep_equal::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnDeepEqualIterator(sctx, loc, argv);
+}
+
+
+PlanIter_t fn_avg::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnAvgIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_sum::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnSumIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_sum_double::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnSumDoubleIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_sum_float::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnSumFloatIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_sum_decimal::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnSumDecimalIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_sum_integer::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnSumIntegerIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_to::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new OpToIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_id::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnIdIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_element_with_id::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnElementWithIdIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_idref::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnIdRefIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_doc::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnDocIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_doc_available::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnDocAvailableIterator(sctx, loc, argv);
+}
+
+void populate_context_sequences(static_context* sctx)
+{
+ {
+ std::vector<xqtref_t> lParamTypes;
+ lParamTypes.push_back(GENV_TYPESYSTEM.ITEM_TYPE_STAR);
+
+ DECL_WITH_KIND(sctx, op_concatenate,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","concatenate"),
+ lParamTypes, GENV_TYPESYSTEM.ITEM_TYPE_STAR, true),
+ FunctionConsts::OP_CONCATENATE_N);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_index_of,
+ (createQName("http://www.w3.org/2005/xpath-functions","","index-of"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
+ FunctionConsts::FN_INDEX_OF_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_index_of,
+ (createQName("http://www.w3.org/2005/xpath-functions","","index-of"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
+ FunctionConsts::FN_INDEX_OF_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_empty,
+ (createQName("http://www.w3.org/2005/xpath-functions","","empty"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_EMPTY_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_exists,
+ (createQName("http://www.w3.org/2005/xpath-functions","","exists"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_EXISTS_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_distinct_values,
+ (createQName("http://www.w3.org/2005/xpath-functions","","distinct-values"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR),
+ FunctionConsts::FN_DISTINCT_VALUES_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_distinct_values,
+ (createQName("http://www.w3.org/2005/xpath-functions","","distinct-values"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR),
+ FunctionConsts::FN_DISTINCT_VALUES_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_insert_before,
+ (createQName("http://www.w3.org/2005/xpath-functions","","insert-before"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::FN_INSERT_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_remove,
+ (createQName("http://www.w3.org/2005/xpath-functions","","remove"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::FN_REMOVE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_reverse,
+ (createQName("http://www.w3.org/2005/xpath-functions","","reverse"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::FN_REVERSE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_subsequence,
+ (createQName("http://www.w3.org/2005/xpath-functions","","subsequence"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::FN_SUBSEQUENCE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_subsequence,
+ (createQName("http://www.w3.org/2005/xpath-functions","","subsequence"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::FN_SUBSEQUENCE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_zorba_subsequence_int,
+ (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","subsequence-int"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::OP_ZORBA_SUBSEQUENCE_INT_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_zorba_subsequence_int,
+ (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","subsequence-int"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR),
+ FunctionConsts::OP_ZORBA_SUBSEQUENCE_INT_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_zorba_sequence_point_access,
+ (createQName("http://www.zorba-xquery.com/internal/zorba-ops","","sequence-point-access"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.ITEM_TYPE_QUESTION),
+ FunctionConsts::OP_ZORBA_SEQUENCE_POINT_ACCESS_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_zero_or_one,
+ (createQName("http://www.w3.org/2005/xpath-functions","","zero-or-one"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_QUESTION),
+ FunctionConsts::FN_ZERO_OR_ONE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_one_or_more,
+ (createQName("http://www.w3.org/2005/xpath-functions","","one-or-more"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_PLUS),
+ FunctionConsts::FN_ONE_OR_MORE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_deep_equal,
+ (createQName("http://www.w3.org/2005/xpath-functions","","deep-equal"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_DEEP_EQUAL_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_deep_equal,
+ (createQName("http://www.w3.org/2005/xpath-functions","","deep-equal"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_DEEP_EQUAL_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_count,
+ (createQName("http://www.w3.org/2005/xpath-functions","","count"),
+ GENV_TYPESYSTEM.ITEM_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::FN_COUNT_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_avg,
+ (createQName("http://www.w3.org/2005/xpath-functions","","avg"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::FN_AVG_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_sum,
+ (createQName("http://www.w3.org/2005/xpath-functions","","sum"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_ONE),
+ FunctionConsts::FN_SUM_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_sum,
+ (createQName("http://www.w3.org/2005/xpath-functions","","sum"),
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::FN_SUM_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_double,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_double"),
+ GENV_TYPESYSTEM.DOUBLE_TYPE_STAR,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE),
+ FunctionConsts::OP_SUM_DOUBLE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_double,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_double"),
+ GENV_TYPESYSTEM.DOUBLE_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::OP_SUM_DOUBLE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_float,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_float"),
+ GENV_TYPESYSTEM.FLOAT_TYPE_STAR,
+ GENV_TYPESYSTEM.FLOAT_TYPE_ONE),
+ FunctionConsts::OP_SUM_FLOAT_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_float,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_float"),
+ GENV_TYPESYSTEM.FLOAT_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::OP_SUM_FLOAT_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_decimal,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_decimal"),
+ GENV_TYPESYSTEM.DECIMAL_TYPE_STAR,
+ GENV_TYPESYSTEM.DECIMAL_TYPE_ONE),
+ FunctionConsts::OP_SUM_DECIMAL_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_decimal,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_decimal"),
+ GENV_TYPESYSTEM.DECIMAL_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::OP_SUM_DECIMAL_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_integer,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_integer"),
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::OP_SUM_INTEGER_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_sum_integer,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","sum_integer"),
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION,
+ GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION),
+ FunctionConsts::OP_SUM_INTEGER_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_to,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","to"),
+ GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
+ FunctionConsts::OP_TO_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_id,
+ (createQName("http://www.w3.org/2005/xpath-functions","","id"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
+ FunctionConsts::FN_ID_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_id,
+ (createQName("http://www.w3.org/2005/xpath-functions","","id"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
+ FunctionConsts::FN_ID_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_element_with_id,
+ (createQName("http://www.w3.org/2005/xpath-functions","","element-with-id"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
+ FunctionConsts::FN_ELEMENT_WITH_ID_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_element_with_id,
+ (createQName("http://www.w3.org/2005/xpath-functions","","element-with-id"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_STAR),
+ FunctionConsts::FN_ELEMENT_WITH_ID_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_idref,
+ (createQName("http://www.w3.org/2005/xpath-functions","","idref"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::FN_IDREF_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_idref,
+ (createQName("http://www.w3.org/2005/xpath-functions","","idref"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_ONE,
+ GENV_TYPESYSTEM.ANY_NODE_TYPE_STAR),
+ FunctionConsts::FN_IDREF_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_doc,
+ (createQName("http://www.w3.org/2005/xpath-functions","","doc"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.DOCUMENT_UNTYPED_TYPE_QUESTION),
+ FunctionConsts::FN_DOC_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_doc_available,
+ (createQName("http://www.w3.org/2005/xpath-functions","","doc-available"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_DOC_AVAILABLE_1);
+
+ }
+
+}
+
+
+}
+
+
+
=== modified file 'src/functions/pregenerated/func_sequences.h'
--- src/functions/pregenerated/func_sequences.h 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_sequences.h 2012-05-02 06:48:21 +0000
@@ -1,708 +1,633 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-
-#ifndef ZORBA_FUNCTIONS_SEQUENCES_H
-#define ZORBA_FUNCTIONS_SEQUENCES_H
-
-
-#include "common/shared_types.h"
-#include "functions/function_impl.h"
-
-
-namespace zorba {
-
-
-void populate_context_sequences(static_context* sctx);
-
-
-
-
-//op:concatenate
-class op_concatenate : public function
-{
-public:
- op_concatenate(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:index-of
-class fn_index_of : public function
-{
-public:
- fn_index_of(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:empty
-class fn_empty : public function
-{
-public:
- fn_empty(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:exists
-class fn_exists : public function
-{
-public:
- fn_exists(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:distinct-values
-class fn_distinct_values : public function
-{
-public:
- fn_distinct_values(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//fn:insert-before
-class fn_insert_before : public function
-{
-public:
- fn_insert_before(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:remove
-class fn_remove : public function
-{
-public:
- fn_remove(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- bool propagatesSortedNodes(csize producer) const { return producer == 0; }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:reverse
-class fn_reverse : public function
-{
-public:
- fn_reverse(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:subsequence
-class fn_subsequence : public function
-{
-public:
- fn_subsequence(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- bool propagatesSortedNodes(csize producer) const { return producer == 0; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- bool serializable() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//op-zorba:subsequence-int
-class op_zorba_subsequence_int : public function
-{
-public:
- op_zorba_subsequence_int(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- bool propagatesSortedNodes(csize producer) const { return producer == 0; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//op-zorba:sequence-point-access
-class op_zorba_sequence_point_access : public function
-{
-public:
- op_zorba_sequence_point_access(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- bool propagatesSortedNodes(csize producer) const { return producer == 0; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:zero-or-one
-class fn_zero_or_one : public function
-{
-public:
- fn_zero_or_one(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:one-or-more
-class fn_one_or_more : public function
-{
-public:
- fn_one_or_more(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- xqtref_t getReturnType(const fo_expr* caller) const;
-
- bool isMap(ulong producer) const { return producer == 0; }
-
- bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
-
- bool propagatesSortedNodes(csize producer) const { return producer == 0; }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:deep-equal
-class fn_deep_equal : public function
-{
-public:
- fn_deep_equal(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:count
-class fn_count : public function
-{
-public:
- fn_count(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:avg
-class fn_avg : public function
-{
-public:
- fn_avg(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//fn:sum
-class fn_sum : public function
-{
-public:
- fn_sum(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool specializable() const { return true; }
-
- function* specialize( static_context* sctx,
- const std::vector<xqtref_t>& argTypes) const;
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//op:sum_double
-class op_sum_double : public function
-{
-public:
- op_sum_double(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//op:sum_float
-class op_sum_float : public function
-{
-public:
- op_sum_float(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//op:sum_decimal
-class op_sum_decimal : public function
-{
-public:
- op_sum_decimal(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//op:sum_integer
-class op_sum_integer : public function
-{
-public:
- op_sum_integer(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- CODEGEN_DECL();
-};
-
-
-//op:to
-class op_to : public function
-{
-public:
- op_to(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:id
-class fn_id : public function
-{
-public:
- fn_id(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- FunctionConsts::AnnotationValue producesDistinctNodes() const
- {
- return FunctionConsts::YES;
- }
-
- FunctionConsts::AnnotationValue producesSortedNodes() const
- {
- return FunctionConsts::YES;
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:element-with-id
-class fn_element_with_id : public function
-{
-public:
- fn_element_with_id(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- FunctionConsts::AnnotationValue producesDistinctNodes() const
- {
- return FunctionConsts::YES;
- }
-
- FunctionConsts::AnnotationValue producesSortedNodes() const
- {
- return FunctionConsts::YES;
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:idref
-class fn_idref : public function
-{
-public:
- fn_idref(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- FunctionConsts::AnnotationValue producesDistinctNodes() const
- {
- return FunctionConsts::YES;
- }
-
- FunctionConsts::AnnotationValue producesSortedNodes() const
- {
- return FunctionConsts::YES;
- }
-
- BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
-
- BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
-
- bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:doc
-class fn_doc : public function
-{
-public:
- fn_doc(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- bool accessesDynCtx() const { return true; }
-
- bool isSource() const { return true; }
-
- CODEGEN_DECL();
-};
-
-
-//fn:doc-available
-class fn_doc_available : public function
-{
-public:
- fn_doc_available(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:available-environment-variables
-class fn_available_environment_variables_3_0 : public function
-{
-public:
- fn_available_environment_variables_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:environment-variable
-class fn_environment_variable_3_0 : public function
-{
-public:
- fn_environment_variable_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:unparsed-text
-class fn_unparsed_text_3_0 : public function
-{
-public:
- fn_unparsed_text_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:unparsed-text-available
-class fn_unparsed_text_available_3_0 : public function
-{
-public:
- fn_unparsed_text_available_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-//fn:unparsed-text-lines
-class fn_unparsed_text_lines_3_0 : public function
-{
-public:
- fn_unparsed_text_lines_3_0(const signature& sig, FunctionConsts::FunctionKind kind)
- :
- function(sig, kind)
- {
-theXQueryVersion = StaticContextConsts::xquery_version_3_0;
- }
-
- CODEGEN_DECL();
-};
-
-
-} //namespace zorba
-
-
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+
+#ifndef ZORBA_FUNCTIONS_SEQUENCES_H
+#define ZORBA_FUNCTIONS_SEQUENCES_H
+
+
+#include "common/shared_types.h"
+#include "functions/function_impl.h"
+
+
+namespace zorba {
+
+
+void populate_context_sequences(static_context* sctx);
+
+
+
+
+//op:concatenate
+class op_concatenate : public function
+{
+public:
+ op_concatenate(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:index-of
+class fn_index_of : public function
+{
+public:
+ fn_index_of(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:empty
+class fn_empty : public function
+{
+public:
+ fn_empty(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:exists
+class fn_exists : public function
+{
+public:
+ fn_exists(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:distinct-values
+class fn_distinct_values : public function
+{
+public:
+ fn_distinct_values(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//fn:insert-before
+class fn_insert_before : public function
+{
+public:
+ fn_insert_before(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:remove
+class fn_remove : public function
+{
+public:
+ fn_remove(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ bool propagatesSortedNodes(csize producer) const { return producer == 0; }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:reverse
+class fn_reverse : public function
+{
+public:
+ fn_reverse(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:subsequence
+class fn_subsequence : public function
+{
+public:
+ fn_subsequence(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ bool propagatesSortedNodes(csize producer) const { return producer == 0; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ bool serializable() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//op-zorba:subsequence-int
+class op_zorba_subsequence_int : public function
+{
+public:
+ op_zorba_subsequence_int(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ bool propagatesSortedNodes(csize producer) const { return producer == 0; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//op-zorba:sequence-point-access
+class op_zorba_sequence_point_access : public function
+{
+public:
+ op_zorba_sequence_point_access(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ bool propagatesSortedNodes(csize producer) const { return producer == 0; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:zero-or-one
+class fn_zero_or_one : public function
+{
+public:
+ fn_zero_or_one(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:one-or-more
+class fn_one_or_more : public function
+{
+public:
+ fn_one_or_more(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ xqtref_t getReturnType(const fo_expr* caller) const;
+
+ bool isMap(ulong producer) const { return producer == 0; }
+
+ bool propagatesDistinctNodes(csize producer) const { return producer == 0; }
+
+ bool propagatesSortedNodes(csize producer) const { return producer == 0; }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:deep-equal
+class fn_deep_equal : public function
+{
+public:
+ fn_deep_equal(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:count
+class fn_count : public function
+{
+public:
+ fn_count(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return false; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:avg
+class fn_avg : public function
+{
+public:
+ fn_avg(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//fn:sum
+class fn_sum : public function
+{
+public:
+ fn_sum(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool specializable() const { return true; }
+
+ function* specialize( static_context* sctx,
+ const std::vector<xqtref_t>& argTypes) const;
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//op:sum_double
+class op_sum_double : public function
+{
+public:
+ op_sum_double(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//op:sum_float
+class op_sum_float : public function
+{
+public:
+ op_sum_float(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//op:sum_decimal
+class op_sum_decimal : public function
+{
+public:
+ op_sum_decimal(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//op:sum_integer
+class op_sum_integer : public function
+{
+public:
+ op_sum_integer(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ CODEGEN_DECL();
+};
+
+
+//op:to
+class op_to : public function
+{
+public:
+ op_to(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:id
+class fn_id : public function
+{
+public:
+ fn_id(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ FunctionConsts::AnnotationValue producesDistinctNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ FunctionConsts::AnnotationValue producesSortedNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:element-with-id
+class fn_element_with_id : public function
+{
+public:
+ fn_element_with_id(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ FunctionConsts::AnnotationValue producesDistinctNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ FunctionConsts::AnnotationValue producesSortedNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:idref
+class fn_idref : public function
+{
+public:
+ fn_idref(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ FunctionConsts::AnnotationValue producesDistinctNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ FunctionConsts::AnnotationValue producesSortedNodes() const
+ {
+ return FunctionConsts::YES;
+ }
+
+ BoolAnnotationValue ignoresSortedNodes(expr* fo, csize producer) const;
+
+ BoolAnnotationValue ignoresDuplicateNodes(expr* fo, csize producer) const;
+
+ bool mustCopyInputNodes(expr* fo, csize producer) const { return producer == 1; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:doc
+class fn_doc : public function
+{
+public:
+ fn_doc(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ bool accessesDynCtx() const { return true; }
+
+ bool isSource() const { return true; }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:doc-available
+class fn_doc_available : public function
+{
+public:
+ fn_doc_available(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+} //namespace zorba
+
+
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/functions/pregenerated/func_strings.cpp'
--- src/functions/pregenerated/func_strings.cpp 2012-04-24 12:39:38 +0000
+++ src/functions/pregenerated/func_strings.cpp 2012-05-02 06:48:21 +0000
@@ -1,895 +1,922 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-
-#include "stdafx.h"
-#include "runtime/strings/strings.h"
-#include "functions/func_strings.h"
-
-
-namespace zorba{
-
-
-
-PlanIter_t fn_codepoints_to_string::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new CodepointsToStringIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_string_to_codepoints::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringToCodepointsIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_compare::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new CompareStrIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_codepoint_equal::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new CodepointEqualIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_concat::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new ConcatStrIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_string_join_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringJoinIterator(sctx, loc, argv);
-}
-PlanIter_t fn_string_join::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringJoinIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_substring::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new SubstringIterator(sctx, loc, argv);
-}
-
-PlanIter_t op_substring_int::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new SubstringIntOptIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_string_length::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringLengthIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_normalize_space::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new NormalizeSpaceIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_normalize_unicode::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new NormalizeUnicodeIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_upper_case::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new UpperCaseIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_lower_case::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new LowerCaseIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_translate::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new TranslateIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_encode_for_uri::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new EncodeForUriIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_iri_to_uri::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new IriToUriIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_escape_html_uri::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new EscapeHtmlUriIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_contains::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new ContainsIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_starts_with::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StartsWithIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_ends_with::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new EndsWithIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_substring_before::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new SubstringBeforeIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_substring_after::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new SubstringAfterIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_matches::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnMatchesIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_replace::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnReplaceIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_tokenize::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnTokenizeIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_analyze_string_3_0::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new FnAnalyzeStringIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_zorba_string_materialize::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringMaterializeIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_zorba_string_is_streamable::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringIsStreamableIterator(sctx, loc, argv);
-}
-
-PlanIter_t fn_zorba_string_split::codegen(
- CompilerCB*,
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& argv,
- expr& ann) const
-{
- return new StringSplitIterator(sctx, loc, argv);
-}
-
-void populate_context_strings(static_context* sctx)
-{
- {
-
-
- DECL_WITH_KIND(sctx, fn_codepoints_to_string,
- (createQName("http://www.w3.org/2005/xpath-functions","","codepoints-to-string"),
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_CODEPOINTS_TO_STRING_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_string_to_codepoints,
- (createQName("http://www.w3.org/2005/xpath-functions","","string-to-codepoints"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
- FunctionConsts::FN_STRING_TO_CODEPOINTS_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_compare,
- (createQName("http://www.w3.org/2005/xpath-functions","","compare"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION),
- FunctionConsts::FN_COMPARE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_compare,
- (createQName("http://www.w3.org/2005/xpath-functions","","compare"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION),
- FunctionConsts::FN_COMPARE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_codepoint_equal,
- (createQName("http://www.w3.org/2005/xpath-functions","","codepoint-equal"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_QUESTION),
- FunctionConsts::FN_CODEPOINT_EQUAL_2);
-
- }
-
-
- {
- std::vector<xqtref_t> lParamTypes;
- lParamTypes.push_back(GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION);
-
- DECL_WITH_KIND(sctx, fn_concat,
- (createQName("http://www.w3.org/2005/xpath-functions","","concat"),
- lParamTypes, GENV_TYPESYSTEM.STRING_TYPE_ONE, true),
- FunctionConsts::FN_CONCAT_N);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_string_join_3_0,
- (createQName("http://www.w3.org/2005/xpath-functions","","string-join"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_STRING_JOIN_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_string_join,
- (createQName("http://www.w3.org/2005/xpath-functions","","string-join"),
- GENV_TYPESYSTEM.STRING_TYPE_STAR,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_STRING_JOIN_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_substring_int,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","substring_int"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::OP_SUBSTRING_INT_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, op_substring_int,
- (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","substring_int"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::OP_SUBSTRING_INT_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_string_length,
- (createQName("http://www.w3.org/2005/xpath-functions","","string-length"),
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::FN_STRING_LENGTH_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_string_length,
- (createQName("http://www.w3.org/2005/xpath-functions","","string-length"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
- FunctionConsts::FN_STRING_LENGTH_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_normalize_space,
- (createQName("http://www.w3.org/2005/xpath-functions","","normalize-space"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_NORMALIZE_SPACE_0);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_normalize_space,
- (createQName("http://www.w3.org/2005/xpath-functions","","normalize-space"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_NORMALIZE_SPACE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_normalize_unicode,
- (createQName("http://www.w3.org/2005/xpath-functions","","normalize-unicode"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_NORMALIZE_UNICODE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_normalize_unicode,
- (createQName("http://www.w3.org/2005/xpath-functions","","normalize-unicode"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_NORMALIZE_UNICODE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_upper_case,
- (createQName("http://www.w3.org/2005/xpath-functions","","upper-case"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_UPPER_CASE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_lower_case,
- (createQName("http://www.w3.org/2005/xpath-functions","","lower-case"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_LOWER_CASE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_translate,
- (createQName("http://www.w3.org/2005/xpath-functions","","translate"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_TRANSLATE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_encode_for_uri,
- (createQName("http://www.w3.org/2005/xpath-functions","","encode-for-uri"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_ENCODE_FOR_URI_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_iri_to_uri,
- (createQName("http://www.w3.org/2005/xpath-functions","","iri-to-uri"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_IRI_TO_URI_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_escape_html_uri,
- (createQName("http://www.w3.org/2005/xpath-functions","","escape-html-uri"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_ESCAPE_HTML_URI_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_contains,
- (createQName("http://www.w3.org/2005/xpath-functions","","contains"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_CONTAINS_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_contains,
- (createQName("http://www.w3.org/2005/xpath-functions","","contains"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_CONTAINS_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_starts_with,
- (createQName("http://www.w3.org/2005/xpath-functions","","starts-with"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_STARTS_WITH_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_starts_with,
- (createQName("http://www.w3.org/2005/xpath-functions","","starts-with"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_STARTS_WITH_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_ends_with,
- (createQName("http://www.w3.org/2005/xpath-functions","","ends-with"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_ENDS_WITH_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_ends_with,
- (createQName("http://www.w3.org/2005/xpath-functions","","ends-with"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_ENDS_WITH_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring_before,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring-before"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_BEFORE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring_before,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring-before"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_BEFORE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring_after,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring-after"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_AFTER_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_substring_after,
- (createQName("http://www.w3.org/2005/xpath-functions","","substring-after"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_SUBSTRING_AFTER_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_matches,
- (createQName("http://www.w3.org/2005/xpath-functions","","matches"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_MATCHES_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_matches,
- (createQName("http://www.w3.org/2005/xpath-functions","","matches"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_MATCHES_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_replace,
- (createQName("http://www.w3.org/2005/xpath-functions","","replace"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_REPLACE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_replace,
- (createQName("http://www.w3.org/2005/xpath-functions","","replace"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_REPLACE_4);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_tokenize,
- (createQName("http://www.w3.org/2005/xpath-functions","","tokenize"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_TOKENIZE_2);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_tokenize,
- (createQName("http://www.w3.org/2005/xpath-functions","","tokenize"),
- GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_TOKENIZE_3);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_zorba_string_materialize,
- (createQName("http://www.zorba-xquery.com/modules/string","","materialize"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE),
- FunctionConsts::FN_ZORBA_STRING_MATERIALIZE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_zorba_string_is_streamable,
- (createQName("http://www.zorba-xquery.com/modules/string","","is-streamable"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
- FunctionConsts::FN_ZORBA_STRING_IS_STREAMABLE_1);
-
- }
-
-
- {
-
-
- DECL_WITH_KIND(sctx, fn_zorba_string_split,
- (createQName("http://www.zorba-xquery.com/modules/string","","split"),
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_ONE,
- GENV_TYPESYSTEM.STRING_TYPE_STAR),
- FunctionConsts::FN_ZORBA_STRING_SPLIT_2);
-
- }
-
-}
-
-
-}
-
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+
+#include "stdafx.h"
+#include "runtime/strings/strings.h"
+#include "functions/func_strings.h"
+
+
+namespace zorba{
+
+
+
+PlanIter_t fn_codepoints_to_string::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new CodepointsToStringIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_string_to_codepoints::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringToCodepointsIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_compare::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new CompareStrIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_codepoint_equal::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new CodepointEqualIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_concat::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new ConcatStrIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_string_join_3_0::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringJoinIterator(sctx, loc, argv);
+}
+PlanIter_t fn_string_join::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringJoinIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_substring::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new SubstringIterator(sctx, loc, argv);
+}
+
+PlanIter_t op_substring_int::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new SubstringIntOptIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_string_length::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringLengthIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_normalize_space::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new NormalizeSpaceIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_normalize_unicode::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new NormalizeUnicodeIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_upper_case::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new UpperCaseIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_lower_case::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new LowerCaseIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_translate::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new TranslateIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_encode_for_uri::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new EncodeForUriIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_iri_to_uri::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new IriToUriIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_escape_html_uri::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new EscapeHtmlUriIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_contains::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new ContainsIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_starts_with::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StartsWithIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_ends_with::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new EndsWithIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_substring_before::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new SubstringBeforeIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_substring_after::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new SubstringAfterIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_matches::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnMatchesIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_replace::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnReplaceIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_tokenize::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnTokenizeIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_analyze_string_3_0::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new FnAnalyzeStringIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_zorba_string_materialize::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringMaterializeIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_zorba_string_is_streamable::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringIsStreamableIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_zorba_string_split::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ expr& ann) const
+{
+ return new StringSplitIterator(sctx, loc, argv);
+}
+
+void populate_context_strings(static_context* sctx)
+{
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_codepoints_to_string,
+ (createQName("http://www.w3.org/2005/xpath-functions","","codepoints-to-string"),
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_CODEPOINTS_TO_STRING_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_string_to_codepoints,
+ (createQName("http://www.w3.org/2005/xpath-functions","","string-to-codepoints"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_STAR),
+ FunctionConsts::FN_STRING_TO_CODEPOINTS_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_compare,
+ (createQName("http://www.w3.org/2005/xpath-functions","","compare"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION),
+ FunctionConsts::FN_COMPARE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_compare,
+ (createQName("http://www.w3.org/2005/xpath-functions","","compare"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_QUESTION),
+ FunctionConsts::FN_COMPARE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_codepoint_equal,
+ (createQName("http://www.w3.org/2005/xpath-functions","","codepoint-equal"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_QUESTION),
+ FunctionConsts::FN_CODEPOINT_EQUAL_2);
+
+ }
+
+
+ {
+ std::vector<xqtref_t> lParamTypes;
+ lParamTypes.push_back(GENV_TYPESYSTEM.ANY_ATOMIC_TYPE_QUESTION);
+
+ DECL_WITH_KIND(sctx, fn_concat,
+ (createQName("http://www.w3.org/2005/xpath-functions","","concat"),
+ lParamTypes, GENV_TYPESYSTEM.STRING_TYPE_ONE, true),
+ FunctionConsts::FN_CONCAT_N);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_string_join_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","string-join"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_STRING_JOIN_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_string_join,
+ (createQName("http://www.w3.org/2005/xpath-functions","","string-join"),
+ GENV_TYPESYSTEM.STRING_TYPE_STAR,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_STRING_JOIN_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.DOUBLE_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_substring_int,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","substring_int"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::OP_SUBSTRING_INT_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, op_substring_int,
+ (createQName("http://www.zorba-xquery.com/internal/xquery-ops","","substring_int"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::OP_SUBSTRING_INT_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_string_length,
+ (createQName("http://www.w3.org/2005/xpath-functions","","string-length"),
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::FN_STRING_LENGTH_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_string_length,
+ (createQName("http://www.w3.org/2005/xpath-functions","","string-length"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.INTEGER_TYPE_ONE),
+ FunctionConsts::FN_STRING_LENGTH_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_normalize_space,
+ (createQName("http://www.w3.org/2005/xpath-functions","","normalize-space"),
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_NORMALIZE_SPACE_0);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_normalize_space,
+ (createQName("http://www.w3.org/2005/xpath-functions","","normalize-space"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_NORMALIZE_SPACE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_normalize_unicode,
+ (createQName("http://www.w3.org/2005/xpath-functions","","normalize-unicode"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_NORMALIZE_UNICODE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_normalize_unicode,
+ (createQName("http://www.w3.org/2005/xpath-functions","","normalize-unicode"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_NORMALIZE_UNICODE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_upper_case,
+ (createQName("http://www.w3.org/2005/xpath-functions","","upper-case"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_UPPER_CASE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_lower_case,
+ (createQName("http://www.w3.org/2005/xpath-functions","","lower-case"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_LOWER_CASE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_translate,
+ (createQName("http://www.w3.org/2005/xpath-functions","","translate"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_TRANSLATE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_encode_for_uri,
+ (createQName("http://www.w3.org/2005/xpath-functions","","encode-for-uri"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_ENCODE_FOR_URI_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_iri_to_uri,
+ (createQName("http://www.w3.org/2005/xpath-functions","","iri-to-uri"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_IRI_TO_URI_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_escape_html_uri,
+ (createQName("http://www.w3.org/2005/xpath-functions","","escape-html-uri"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_ESCAPE_HTML_URI_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_contains,
+ (createQName("http://www.w3.org/2005/xpath-functions","","contains"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_CONTAINS_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_contains,
+ (createQName("http://www.w3.org/2005/xpath-functions","","contains"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_CONTAINS_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_starts_with,
+ (createQName("http://www.w3.org/2005/xpath-functions","","starts-with"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_STARTS_WITH_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_starts_with,
+ (createQName("http://www.w3.org/2005/xpath-functions","","starts-with"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_STARTS_WITH_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_ends_with,
+ (createQName("http://www.w3.org/2005/xpath-functions","","ends-with"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_ENDS_WITH_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_ends_with,
+ (createQName("http://www.w3.org/2005/xpath-functions","","ends-with"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_ENDS_WITH_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring_before,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring-before"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_BEFORE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring_before,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring-before"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_BEFORE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring_after,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring-after"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_AFTER_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_substring_after,
+ (createQName("http://www.w3.org/2005/xpath-functions","","substring-after"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_SUBSTRING_AFTER_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_matches,
+ (createQName("http://www.w3.org/2005/xpath-functions","","matches"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_MATCHES_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_matches,
+ (createQName("http://www.w3.org/2005/xpath-functions","","matches"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_MATCHES_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_replace,
+ (createQName("http://www.w3.org/2005/xpath-functions","","replace"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_REPLACE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_replace,
+ (createQName("http://www.w3.org/2005/xpath-functions","","replace"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_REPLACE_4);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_tokenize,
+ (createQName("http://www.w3.org/2005/xpath-functions","","tokenize"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_STAR),
+ FunctionConsts::FN_TOKENIZE_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_tokenize,
+ (createQName("http://www.w3.org/2005/xpath-functions","","tokenize"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_STAR),
+ FunctionConsts::FN_TOKENIZE_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_analyze_string_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","analyze-string"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_ONE),
+ FunctionConsts::FN_ANALYZE_STRING_2);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_analyze_string_3_0,
+ (createQName("http://www.w3.org/2005/xpath-functions","","analyze-string"),
+ GENV_TYPESYSTEM.STRING_TYPE_QUESTION,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.ELEMENT_TYPE_ONE),
+ FunctionConsts::FN_ANALYZE_STRING_3);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_zorba_string_materialize,
+ (createQName("http://www.zorba-xquery.com/modules/string","","materialize"),
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE),
+ FunctionConsts::FN_ZORBA_STRING_MATERIALIZE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_zorba_string_is_streamable,
+ (createQName("http://www.zorba-xquery.com/modules/string","","is-streamable"),
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.BOOLEAN_TYPE_ONE),
+ FunctionConsts::FN_ZORBA_STRING_IS_STREAMABLE_1);
+
+ }
+
+
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_zorba_string_split,
+ (createQName("http://www.zorba-xquery.com/modules/string","","split"),
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_ONE,
+ GENV_TYPESYSTEM.STRING_TYPE_STAR),
+ FunctionConsts::FN_ZORBA_STRING_SPLIT_2);
+
+ }
+
+}
+
+
+}
+
+
+
=== modified file 'src/functions/pregenerated/function_enum.h'
--- src/functions/pregenerated/function_enum.h 2012-04-26 13:25:13 +0000
+++ src/functions/pregenerated/function_enum.h 2012-05-02 06:48:21 +0000
@@ -22,6 +22,7 @@
// ******************************************
FN_NODE_NAME_0,
FN_NODE_NAME_1,
+ FN_NILLED_0,
FN_NILLED_1,
FN_STRING_0,
FN_STRING_1,
@@ -251,6 +252,7 @@
FN_LANG_2,
FN_NUMBER_0,
FN_NUMBER_1,
+ FN_HAS_CHILDREN_0,
FN_HAS_CHILDREN_1,
FN_INNERMOST_1,
FN_OUTERMOST_1,
@@ -266,6 +268,8 @@
FN_ZORBA_NODE_PRECEDING_SIBLING_OF_2,
FN_ZORBA_NODE_LEVEL_1,
FN_ZORBA_NODE_LEAST_COMMON_ANCESTOR_2,
+ FN_PATH_0,
+ FN_PATH_1,
FN_ABS_1,
FN_CEILING_1,
FN_FLOOR_1,
=== modified file 'src/runtime/accessors/accessors_impl.cpp'
--- src/runtime/accessors/accessors_impl.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/accessors/accessors_impl.cpp 2012-05-02 06:48:21 +0000
@@ -79,8 +79,7 @@
if (consumeNext(inNode, theChildren[0].getp(), planState))
{
if (inNode->isNode()) {
- result = inNode->getNilled();
- STACK_PUSH(result != NULL, state);
+ STACK_PUSH(GENV_ITEMFACTORY->createBoolean(result, inNode->getNilled() != NULL), state);
} else
throw XQUERY_EXCEPTION(
err::XPTY0004,
=== modified file 'src/runtime/accessors/pregenerated/accessors.cpp'
--- src/runtime/accessors/pregenerated/accessors.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/accessors/pregenerated/accessors.cpp 2012-05-02 06:48:21 +0000
@@ -1,221 +1,221 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/accessors/accessors.h"
-#include "system/globalenv.h"
-
-
-#include "store/api/iterator.h"
-
-namespace zorba {
-
-// <NodeNameIterator>
-NodeNameIterator::class_factory<NodeNameIterator>
-NodeNameIterator::g_class_factory;
-
-
-void NodeNameIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-NodeNameIterator::~NodeNameIterator() {}
-
-// </NodeNameIterator>
-
-
-// <NilledIterator>
-NilledIterator::class_factory<NilledIterator>
-NilledIterator::g_class_factory;
-
-
-void NilledIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-NilledIterator::~NilledIterator() {}
-
-// </NilledIterator>
-
-
-// <FnStringIterator>
-FnStringIterator::class_factory<FnStringIterator>
-FnStringIterator::g_class_factory;
-
-
-void FnStringIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-FnStringIterator::~FnStringIterator() {}
-
-FnStringIteratorState::FnStringIteratorState() {}
-
-FnStringIteratorState::~FnStringIteratorState() {}
-
-
-void FnStringIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- hasOutput = false;
-}
-
-void FnStringIteratorState::reset(PlanState& planState) {
- PlanIteratorState::reset(planState);
- hasOutput = false;
-}
-// </FnStringIterator>
-
-
-// <FnDataIterator>
-FnDataIterator::class_factory<FnDataIterator>
-FnDataIterator::g_class_factory;
-
-
-void FnDataIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-FnDataIterator::~FnDataIterator() {}
-
-FnDataIteratorState::FnDataIteratorState() {}
-
-FnDataIteratorState::~FnDataIteratorState() {}
-
-
-void FnDataIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- theTypedValueIter = NULL;
-}
-
-void FnDataIteratorState::reset(PlanState& planState) {
- PlanIteratorState::reset(planState);
- theTypedValueIter = NULL;
-}
-// </FnDataIterator>
-
-
-// <BaseUriIterator>
-BaseUriIterator::class_factory<BaseUriIterator>
-BaseUriIterator::g_class_factory;
-
-
-void BaseUriIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-BaseUriIterator::~BaseUriIterator() {}
-
-// </BaseUriIterator>
-
-
-// <DocumentUriIterator>
-DocumentUriIterator::class_factory<DocumentUriIterator>
-DocumentUriIterator::g_class_factory;
-
-
-void DocumentUriIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DocumentUriIterator::~DocumentUriIterator() {}
-
-// </DocumentUriIterator>
-
-
-// <RootIterator>
-RootIterator::class_factory<RootIterator>
-RootIterator::g_class_factory;
-
-
-void RootIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-RootIterator::~RootIterator() {}
-
-// </RootIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/accessors/accessors.h"
+#include "system/globalenv.h"
+
+
+#include "store/api/iterator.h"
+
+namespace zorba {
+
+// <NodeNameIterator>
+NodeNameIterator::class_factory<NodeNameIterator>
+NodeNameIterator::g_class_factory;
+
+
+void NodeNameIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+NodeNameIterator::~NodeNameIterator() {}
+
+// </NodeNameIterator>
+
+
+// <NilledIterator>
+NilledIterator::class_factory<NilledIterator>
+NilledIterator::g_class_factory;
+
+
+void NilledIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+NilledIterator::~NilledIterator() {}
+
+// </NilledIterator>
+
+
+// <FnStringIterator>
+FnStringIterator::class_factory<FnStringIterator>
+FnStringIterator::g_class_factory;
+
+
+void FnStringIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+FnStringIterator::~FnStringIterator() {}
+
+FnStringIteratorState::FnStringIteratorState() {}
+
+FnStringIteratorState::~FnStringIteratorState() {}
+
+
+void FnStringIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ hasOutput = false;
+}
+
+void FnStringIteratorState::reset(PlanState& planState) {
+ PlanIteratorState::reset(planState);
+ hasOutput = false;
+}
+// </FnStringIterator>
+
+
+// <FnDataIterator>
+FnDataIterator::class_factory<FnDataIterator>
+FnDataIterator::g_class_factory;
+
+
+void FnDataIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+FnDataIterator::~FnDataIterator() {}
+
+FnDataIteratorState::FnDataIteratorState() {}
+
+FnDataIteratorState::~FnDataIteratorState() {}
+
+
+void FnDataIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ theTypedValueIter = NULL;
+}
+
+void FnDataIteratorState::reset(PlanState& planState) {
+ PlanIteratorState::reset(planState);
+ theTypedValueIter = NULL;
+}
+// </FnDataIterator>
+
+
+// <BaseUriIterator>
+BaseUriIterator::class_factory<BaseUriIterator>
+BaseUriIterator::g_class_factory;
+
+
+void BaseUriIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+BaseUriIterator::~BaseUriIterator() {}
+
+// </BaseUriIterator>
+
+
+// <DocumentUriIterator>
+DocumentUriIterator::class_factory<DocumentUriIterator>
+DocumentUriIterator::g_class_factory;
+
+
+void DocumentUriIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DocumentUriIterator::~DocumentUriIterator() {}
+
+// </DocumentUriIterator>
+
+
+// <RootIterator>
+RootIterator::class_factory<RootIterator>
+RootIterator::g_class_factory;
+
+
+void RootIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+RootIterator::~RootIterator() {}
+
+// </RootIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/accessors/pregenerated/accessors.h'
--- src/runtime/accessors/pregenerated/accessors.h 2012-04-24 12:39:38 +0000
+++ src/runtime/accessors/pregenerated/accessors.h 2012-05-02 06:48:21 +0000
@@ -1,314 +1,314 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_ACCESSORS_ACCESSORS_H
-#define ZORBA_RUNTIME_ACCESSORS_ACCESSORS_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * fn:node-name
- * Author: Zorba Team
- */
-class NodeNameIterator : public NaryBaseIterator<NodeNameIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(NodeNameIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeNameIterator,
- NaryBaseIterator<NodeNameIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<NodeNameIterator, PlanIteratorState>*)this);
- }
-
- NodeNameIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<NodeNameIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~NodeNameIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:nilled
- * Author: Zorba Team
- */
-class NilledIterator : public NaryBaseIterator<NilledIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(NilledIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(NilledIterator,
- NaryBaseIterator<NilledIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<NilledIterator, PlanIteratorState>*)this);
- }
-
- NilledIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<NilledIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~NilledIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:string
- * Author: Zorba Team
- */
-class FnStringIteratorState : public PlanIteratorState
-{
-public:
- bool hasOutput; //
-
- FnStringIteratorState();
-
- ~FnStringIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class FnStringIterator : public NaryBaseIterator<FnStringIterator, FnStringIteratorState>
-{
-protected:
- bool theEmptyStringOnNULL; //
-public:
- SERIALIZABLE_CLASS(FnStringIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnStringIterator,
- NaryBaseIterator<FnStringIterator, FnStringIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<FnStringIterator, FnStringIteratorState>*)this);
-
- ar & theEmptyStringOnNULL;
- }
-
- FnStringIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool emptyStringOnNULL)
- :
- NaryBaseIterator<FnStringIterator, FnStringIteratorState>(sctx, loc, children),
- theEmptyStringOnNULL(emptyStringOnNULL)
- {}
-
- virtual ~FnStringIterator();
-
- bool isUpdating() const { return theEmptyStringOnNULL; }
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:data
- * Author: Zorba Team
- */
-class FnDataIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t theTypedValueIter; //
-
- FnDataIteratorState();
-
- ~FnDataIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class FnDataIterator : public NaryBaseIterator<FnDataIterator, FnDataIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(FnDataIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnDataIterator,
- NaryBaseIterator<FnDataIterator, FnDataIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<FnDataIterator, FnDataIteratorState>*)this);
- }
-
- FnDataIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<FnDataIterator, FnDataIteratorState>(sctx, loc, children)
- {}
-
- virtual ~FnDataIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:base-uri
- * Author: Zorba Team
- */
-class BaseUriIterator : public NaryBaseIterator<BaseUriIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(BaseUriIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(BaseUriIterator,
- NaryBaseIterator<BaseUriIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<BaseUriIterator, PlanIteratorState>*)this);
- }
-
- BaseUriIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<BaseUriIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~BaseUriIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:document-uri
- * Author: Zorba Team
- */
-class DocumentUriIterator : public NaryBaseIterator<DocumentUriIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DocumentUriIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DocumentUriIterator,
- NaryBaseIterator<DocumentUriIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DocumentUriIterator, PlanIteratorState>*)this);
- }
-
- DocumentUriIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DocumentUriIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DocumentUriIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:root
- * Author: Zorba Team
- */
-class RootIterator : public NaryBaseIterator<RootIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(RootIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(RootIterator,
- NaryBaseIterator<RootIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<RootIterator, PlanIteratorState>*)this);
- }
-
- RootIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<RootIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~RootIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_ACCESSORS_ACCESSORS_H
+#define ZORBA_RUNTIME_ACCESSORS_ACCESSORS_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * fn:node-name
+ * Author: Zorba Team
+ */
+class NodeNameIterator : public NaryBaseIterator<NodeNameIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(NodeNameIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeNameIterator,
+ NaryBaseIterator<NodeNameIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<NodeNameIterator, PlanIteratorState>*)this);
+ }
+
+ NodeNameIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<NodeNameIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~NodeNameIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:nilled
+ * Author: Zorba Team
+ */
+class NilledIterator : public NaryBaseIterator<NilledIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(NilledIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(NilledIterator,
+ NaryBaseIterator<NilledIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<NilledIterator, PlanIteratorState>*)this);
+ }
+
+ NilledIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<NilledIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~NilledIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:string
+ * Author: Zorba Team
+ */
+class FnStringIteratorState : public PlanIteratorState
+{
+public:
+ bool hasOutput; //
+
+ FnStringIteratorState();
+
+ ~FnStringIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class FnStringIterator : public NaryBaseIterator<FnStringIterator, FnStringIteratorState>
+{
+protected:
+ bool theEmptyStringOnNULL; //
+public:
+ SERIALIZABLE_CLASS(FnStringIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnStringIterator,
+ NaryBaseIterator<FnStringIterator, FnStringIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<FnStringIterator, FnStringIteratorState>*)this);
+
+ ar & theEmptyStringOnNULL;
+ }
+
+ FnStringIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool emptyStringOnNULL)
+ :
+ NaryBaseIterator<FnStringIterator, FnStringIteratorState>(sctx, loc, children),
+ theEmptyStringOnNULL(emptyStringOnNULL)
+ {}
+
+ virtual ~FnStringIterator();
+
+ bool isUpdating() const { return theEmptyStringOnNULL; }
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:data
+ * Author: Zorba Team
+ */
+class FnDataIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t theTypedValueIter; //
+
+ FnDataIteratorState();
+
+ ~FnDataIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class FnDataIterator : public NaryBaseIterator<FnDataIterator, FnDataIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(FnDataIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnDataIterator,
+ NaryBaseIterator<FnDataIterator, FnDataIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<FnDataIterator, FnDataIteratorState>*)this);
+ }
+
+ FnDataIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<FnDataIterator, FnDataIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~FnDataIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:base-uri
+ * Author: Zorba Team
+ */
+class BaseUriIterator : public NaryBaseIterator<BaseUriIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(BaseUriIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(BaseUriIterator,
+ NaryBaseIterator<BaseUriIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<BaseUriIterator, PlanIteratorState>*)this);
+ }
+
+ BaseUriIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<BaseUriIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~BaseUriIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:document-uri
+ * Author: Zorba Team
+ */
+class DocumentUriIterator : public NaryBaseIterator<DocumentUriIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DocumentUriIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DocumentUriIterator,
+ NaryBaseIterator<DocumentUriIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DocumentUriIterator, PlanIteratorState>*)this);
+ }
+
+ DocumentUriIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DocumentUriIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DocumentUriIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:root
+ * Author: Zorba Team
+ */
+class RootIterator : public NaryBaseIterator<RootIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(RootIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(RootIterator,
+ NaryBaseIterator<RootIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<RootIterator, PlanIteratorState>*)this);
+ }
+
+ RootIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<RootIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~RootIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/any_uri/pregenerated/any_uri.cpp'
--- src/runtime/any_uri/pregenerated/any_uri.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/any_uri/pregenerated/any_uri.cpp 2012-05-02 06:48:21 +0000
@@ -1,60 +1,60 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/any_uri/any_uri.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <ResolveUriIterator>
-ResolveUriIterator::class_factory<ResolveUriIterator>
-ResolveUriIterator::g_class_factory;
-
-
-void ResolveUriIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ResolveUriIterator::~ResolveUriIterator() {}
-
-// </ResolveUriIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/any_uri/any_uri.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <ResolveUriIterator>
+ResolveUriIterator::class_factory<ResolveUriIterator>
+ResolveUriIterator::g_class_factory;
+
+
+void ResolveUriIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ResolveUriIterator::~ResolveUriIterator() {}
+
+// </ResolveUriIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/any_uri/pregenerated/any_uri.h'
--- src/runtime/any_uri/pregenerated/any_uri.h 2012-04-24 12:39:38 +0000
+++ src/runtime/any_uri/pregenerated/any_uri.h 2012-05-02 06:48:21 +0000
@@ -1,76 +1,76 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_ANY_URI_ANY_URI_H
-#define ZORBA_RUNTIME_ANY_URI_ANY_URI_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * fn:resolve-uri
- * Author: Zorba Team
- */
-class ResolveUriIterator : public NaryBaseIterator<ResolveUriIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ResolveUriIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ResolveUriIterator,
- NaryBaseIterator<ResolveUriIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ResolveUriIterator, PlanIteratorState>*)this);
- }
-
- ResolveUriIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<ResolveUriIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~ResolveUriIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_ANY_URI_ANY_URI_H
+#define ZORBA_RUNTIME_ANY_URI_ANY_URI_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * fn:resolve-uri
+ * Author: Zorba Team
+ */
+class ResolveUriIterator : public NaryBaseIterator<ResolveUriIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ResolveUriIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ResolveUriIterator,
+ NaryBaseIterator<ResolveUriIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ResolveUriIterator, PlanIteratorState>*)this);
+ }
+
+ ResolveUriIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<ResolveUriIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~ResolveUriIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/base64/pregenerated/base64.cpp'
--- src/runtime/base64/pregenerated/base64.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/base64/pregenerated/base64.cpp 2012-05-02 06:48:21 +0000
@@ -1,82 +1,82 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/base64/base64.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <Base64DecodeIterator>
-Base64DecodeIterator::class_factory<Base64DecodeIterator>
-Base64DecodeIterator::g_class_factory;
-
-
-void Base64DecodeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-Base64DecodeIterator::~Base64DecodeIterator() {}
-
-// </Base64DecodeIterator>
-
-
-// <Base64EncodeIterator>
-Base64EncodeIterator::class_factory<Base64EncodeIterator>
-Base64EncodeIterator::g_class_factory;
-
-
-void Base64EncodeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-Base64EncodeIterator::~Base64EncodeIterator() {}
-
-// </Base64EncodeIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/base64/base64.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <Base64DecodeIterator>
+Base64DecodeIterator::class_factory<Base64DecodeIterator>
+Base64DecodeIterator::g_class_factory;
+
+
+void Base64DecodeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+Base64DecodeIterator::~Base64DecodeIterator() {}
+
+// </Base64DecodeIterator>
+
+
+// <Base64EncodeIterator>
+Base64EncodeIterator::class_factory<Base64EncodeIterator>
+Base64EncodeIterator::g_class_factory;
+
+
+void Base64EncodeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+Base64EncodeIterator::~Base64EncodeIterator() {}
+
+// </Base64EncodeIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/base64/pregenerated/base64.h'
--- src/runtime/base64/pregenerated/base64.h 2012-04-24 12:39:38 +0000
+++ src/runtime/base64/pregenerated/base64.h 2012-05-02 06:48:21 +0000
@@ -1,110 +1,110 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_BASE64_BASE64_H
-#define ZORBA_RUNTIME_BASE64_BASE64_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * base64:decode
- * Author: Zorba Team
- */
-class Base64DecodeIterator : public NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(Base64DecodeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(Base64DecodeIterator,
- NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>*)this);
- }
-
- Base64DecodeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~Base64DecodeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * base64:encode
- * Author: Zorba Team
- */
-class Base64EncodeIterator : public NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(Base64EncodeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(Base64EncodeIterator,
- NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>*)this);
- }
-
- Base64EncodeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~Base64EncodeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_BASE64_BASE64_H
+#define ZORBA_RUNTIME_BASE64_BASE64_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * base64:decode
+ * Author: Zorba Team
+ */
+class Base64DecodeIterator : public NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(Base64DecodeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(Base64DecodeIterator,
+ NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>*)this);
+ }
+
+ Base64DecodeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<Base64DecodeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~Base64DecodeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * base64:encode
+ * Author: Zorba Team
+ */
+class Base64EncodeIterator : public NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(Base64EncodeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(Base64EncodeIterator,
+ NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>*)this);
+ }
+
+ Base64EncodeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<Base64EncodeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~Base64EncodeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/booleans/pregenerated/booleans.cpp'
--- src/runtime/booleans/pregenerated/booleans.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/booleans/pregenerated/booleans.cpp 2012-05-02 06:48:21 +0000
@@ -1,104 +1,104 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/booleans/booleans.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <IsSameNodeIterator>
-IsSameNodeIterator::class_factory<IsSameNodeIterator>
-IsSameNodeIterator::g_class_factory;
-
-
-void IsSameNodeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsSameNodeIterator::~IsSameNodeIterator() {}
-
-// </IsSameNodeIterator>
-
-
-// <NodeBeforeIterator>
-NodeBeforeIterator::class_factory<NodeBeforeIterator>
-NodeBeforeIterator::g_class_factory;
-
-
-void NodeBeforeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-NodeBeforeIterator::~NodeBeforeIterator() {}
-
-// </NodeBeforeIterator>
-
-
-// <NodeAfterIterator>
-NodeAfterIterator::class_factory<NodeAfterIterator>
-NodeAfterIterator::g_class_factory;
-
-
-void NodeAfterIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-NodeAfterIterator::~NodeAfterIterator() {}
-
-// </NodeAfterIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/booleans/booleans.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <IsSameNodeIterator>
+IsSameNodeIterator::class_factory<IsSameNodeIterator>
+IsSameNodeIterator::g_class_factory;
+
+
+void IsSameNodeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsSameNodeIterator::~IsSameNodeIterator() {}
+
+// </IsSameNodeIterator>
+
+
+// <NodeBeforeIterator>
+NodeBeforeIterator::class_factory<NodeBeforeIterator>
+NodeBeforeIterator::g_class_factory;
+
+
+void NodeBeforeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+NodeBeforeIterator::~NodeBeforeIterator() {}
+
+// </NodeBeforeIterator>
+
+
+// <NodeAfterIterator>
+NodeAfterIterator::class_factory<NodeAfterIterator>
+NodeAfterIterator::g_class_factory;
+
+
+void NodeAfterIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+NodeAfterIterator::~NodeAfterIterator() {}
+
+// </NodeAfterIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/booleans/pregenerated/booleans.h'
--- src/runtime/booleans/pregenerated/booleans.h 2012-04-24 12:39:38 +0000
+++ src/runtime/booleans/pregenerated/booleans.h 2012-05-02 06:48:21 +0000
@@ -1,144 +1,144 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_BOOLEANS_BOOLEANS_H
-#define ZORBA_RUNTIME_BOOLEANS_BOOLEANS_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * op:is-same-node
- * Author: Zorba Team
- */
-class IsSameNodeIterator : public NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsSameNodeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsSameNodeIterator,
- NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>*)this);
- }
-
- IsSameNodeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsSameNodeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * op:node-before
- * Author: Zorba Team
- */
-class NodeBeforeIterator : public NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(NodeBeforeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeBeforeIterator,
- NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>*)this);
- }
-
- NodeBeforeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~NodeBeforeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * op:node-after
- * Author: Zorba Team
- */
-class NodeAfterIterator : public NaryBaseIterator<NodeAfterIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(NodeAfterIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeAfterIterator,
- NaryBaseIterator<NodeAfterIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<NodeAfterIterator, PlanIteratorState>*)this);
- }
-
- NodeAfterIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<NodeAfterIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~NodeAfterIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_BOOLEANS_BOOLEANS_H
+#define ZORBA_RUNTIME_BOOLEANS_BOOLEANS_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * op:is-same-node
+ * Author: Zorba Team
+ */
+class IsSameNodeIterator : public NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsSameNodeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsSameNodeIterator,
+ NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>*)this);
+ }
+
+ IsSameNodeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsSameNodeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsSameNodeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * op:node-before
+ * Author: Zorba Team
+ */
+class NodeBeforeIterator : public NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(NodeBeforeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeBeforeIterator,
+ NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>*)this);
+ }
+
+ NodeBeforeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<NodeBeforeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~NodeBeforeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * op:node-after
+ * Author: Zorba Team
+ */
+class NodeAfterIterator : public NaryBaseIterator<NodeAfterIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(NodeAfterIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(NodeAfterIterator,
+ NaryBaseIterator<NodeAfterIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<NodeAfterIterator, PlanIteratorState>*)this);
+ }
+
+ NodeAfterIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<NodeAfterIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~NodeAfterIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/collections/pregenerated/collections.cpp'
--- src/runtime/collections/pregenerated/collections.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/collections/pregenerated/collections.cpp 2012-05-02 06:48:21 +0000
@@ -1,803 +1,779 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/collections/collections.h"
-#include "system/globalenv.h"
-
-
-#include "store/api/iterator.h"
-
-namespace zorba {
-
-// <FnCollectionIterator>
-FnCollectionIterator::class_factory<FnCollectionIterator>
-FnCollectionIterator::g_class_factory;
-
-
-void FnCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-FnCollectionIterator::~FnCollectionIterator() {}
-
-FnCollectionIteratorState::FnCollectionIteratorState() {}
-
-// </FnCollectionIterator>
-
-
-// <ZorbaCollectionIterator>
-ZorbaCollectionIterator::class_factory<ZorbaCollectionIterator>
-ZorbaCollectionIterator::g_class_factory;
-
-
-void ZorbaCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaCollectionIterator::~ZorbaCollectionIterator() {}
-
-ZorbaCollectionIteratorState::ZorbaCollectionIteratorState() {}
-
-// </ZorbaCollectionIterator>
-
-
-// <ZorbaIndexOfIterator>
-ZorbaIndexOfIterator::class_factory<ZorbaIndexOfIterator>
-ZorbaIndexOfIterator::g_class_factory;
-
-
-void ZorbaIndexOfIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaIndexOfIterator::~ZorbaIndexOfIterator() {}
-
-// </ZorbaIndexOfIterator>
-
-
-// <ZorbaCreateCollectionIterator>
-ZorbaCreateCollectionIterator::class_factory<ZorbaCreateCollectionIterator>
-ZorbaCreateCollectionIterator::g_class_factory;
-
-
-void ZorbaCreateCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaCreateCollectionIterator::~ZorbaCreateCollectionIterator() {}
-
-// </ZorbaCreateCollectionIterator>
-
-
-// <ZorbaDeleteCollectionIterator>
-ZorbaDeleteCollectionIterator::class_factory<ZorbaDeleteCollectionIterator>
-ZorbaDeleteCollectionIterator::g_class_factory;
-
-
-void ZorbaDeleteCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaDeleteCollectionIterator::~ZorbaDeleteCollectionIterator() {}
-
-// </ZorbaDeleteCollectionIterator>
-
-
-// <ZorbaInsertNodesIterator>
-ZorbaInsertNodesIterator::class_factory<ZorbaInsertNodesIterator>
-ZorbaInsertNodesIterator::g_class_factory;
-
-
-void ZorbaInsertNodesIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaInsertNodesIterator::~ZorbaInsertNodesIterator() {}
-
-// </ZorbaInsertNodesIterator>
-
-
-// <ZorbaInsertNodesFirstIterator>
-ZorbaInsertNodesFirstIterator::class_factory<ZorbaInsertNodesFirstIterator>
-ZorbaInsertNodesFirstIterator::g_class_factory;
-
-
-void ZorbaInsertNodesFirstIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaInsertNodesFirstIterator::~ZorbaInsertNodesFirstIterator() {}
-
-// </ZorbaInsertNodesFirstIterator>
-
-
-// <ZorbaInsertNodesLastIterator>
-ZorbaInsertNodesLastIterator::class_factory<ZorbaInsertNodesLastIterator>
-ZorbaInsertNodesLastIterator::g_class_factory;
-
-
-void ZorbaInsertNodesLastIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaInsertNodesLastIterator::~ZorbaInsertNodesLastIterator() {}
-
-// </ZorbaInsertNodesLastIterator>
-
-
-// <ZorbaInsertNodesBeforeIterator>
-ZorbaInsertNodesBeforeIterator::class_factory<ZorbaInsertNodesBeforeIterator>
-ZorbaInsertNodesBeforeIterator::g_class_factory;
-
-
-void ZorbaInsertNodesBeforeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaInsertNodesBeforeIterator::~ZorbaInsertNodesBeforeIterator() {}
-
-// </ZorbaInsertNodesBeforeIterator>
-
-
-// <ZorbaInsertNodesAfterIterator>
-ZorbaInsertNodesAfterIterator::class_factory<ZorbaInsertNodesAfterIterator>
-ZorbaInsertNodesAfterIterator::g_class_factory;
-
-
-void ZorbaInsertNodesAfterIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaInsertNodesAfterIterator::~ZorbaInsertNodesAfterIterator() {}
-
-// </ZorbaInsertNodesAfterIterator>
-
-
-// <ZorbaApplyInsertNodesIterator>
-ZorbaApplyInsertNodesIterator::class_factory<ZorbaApplyInsertNodesIterator>
-ZorbaApplyInsertNodesIterator::g_class_factory;
-
-
-void ZorbaApplyInsertNodesIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaApplyInsertNodesIterator::~ZorbaApplyInsertNodesIterator() {}
-
-ZorbaApplyInsertNodesIteratorState::ZorbaApplyInsertNodesIteratorState() {}
-
-// </ZorbaApplyInsertNodesIterator>
-
-
-// <ZorbaApplyInsertNodesFirstIterator>
-ZorbaApplyInsertNodesFirstIterator::class_factory<ZorbaApplyInsertNodesFirstIterator>
-ZorbaApplyInsertNodesFirstIterator::g_class_factory;
-
-
-void ZorbaApplyInsertNodesFirstIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaApplyInsertNodesFirstIterator::~ZorbaApplyInsertNodesFirstIterator() {}
-
-ZorbaApplyInsertNodesFirstIteratorState::ZorbaApplyInsertNodesFirstIteratorState() {}
-
-// </ZorbaApplyInsertNodesFirstIterator>
-
-
-// <ZorbaApplyInsertNodesLastIterator>
-ZorbaApplyInsertNodesLastIterator::class_factory<ZorbaApplyInsertNodesLastIterator>
-ZorbaApplyInsertNodesLastIterator::g_class_factory;
-
-
-void ZorbaApplyInsertNodesLastIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaApplyInsertNodesLastIterator::~ZorbaApplyInsertNodesLastIterator() {}
-
-ZorbaApplyInsertNodesLastIteratorState::ZorbaApplyInsertNodesLastIteratorState() {}
-
-// </ZorbaApplyInsertNodesLastIterator>
-
-
-// <ZorbaApplyInsertNodesBeforeIterator>
-ZorbaApplyInsertNodesBeforeIterator::class_factory<ZorbaApplyInsertNodesBeforeIterator>
-ZorbaApplyInsertNodesBeforeIterator::g_class_factory;
-
-
-void ZorbaApplyInsertNodesBeforeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaApplyInsertNodesBeforeIterator::~ZorbaApplyInsertNodesBeforeIterator() {}
-
-ZorbaApplyInsertNodesBeforeIteratorState::ZorbaApplyInsertNodesBeforeIteratorState() {}
-
-// </ZorbaApplyInsertNodesBeforeIterator>
-
-
-// <ZorbaApplyInsertNodesAfterIterator>
-ZorbaApplyInsertNodesAfterIterator::class_factory<ZorbaApplyInsertNodesAfterIterator>
-ZorbaApplyInsertNodesAfterIterator::g_class_factory;
-
-
-void ZorbaApplyInsertNodesAfterIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaApplyInsertNodesAfterIterator::~ZorbaApplyInsertNodesAfterIterator() {}
-
-ZorbaApplyInsertNodesAfterIteratorState::ZorbaApplyInsertNodesAfterIteratorState() {}
-
-// </ZorbaApplyInsertNodesAfterIterator>
-
-
-// <ZorbaDeleteNodesIterator>
-ZorbaDeleteNodesIterator::class_factory<ZorbaDeleteNodesIterator>
-ZorbaDeleteNodesIterator::g_class_factory;
-
-
-void ZorbaDeleteNodesIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaDeleteNodesIterator::~ZorbaDeleteNodesIterator() {}
-
-// </ZorbaDeleteNodesIterator>
-
-
-// <ZorbaDeleteNodesFirstIterator>
-ZorbaDeleteNodesFirstIterator::class_factory<ZorbaDeleteNodesFirstIterator>
-ZorbaDeleteNodesFirstIterator::g_class_factory;
-
-
-void ZorbaDeleteNodesFirstIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaDeleteNodesFirstIterator::~ZorbaDeleteNodesFirstIterator() {}
-
-// </ZorbaDeleteNodesFirstIterator>
-
-
-// <ZorbaDeleteNodesLastIterator>
-ZorbaDeleteNodesLastIterator::class_factory<ZorbaDeleteNodesLastIterator>
-ZorbaDeleteNodesLastIterator::g_class_factory;
-
-
-void ZorbaDeleteNodesLastIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaDeleteNodesLastIterator::~ZorbaDeleteNodesLastIterator() {}
-
-// </ZorbaDeleteNodesLastIterator>
-
-
-// <ZorbaTruncateCollectionIterator>
-ZorbaTruncateCollectionIterator::class_factory<ZorbaTruncateCollectionIterator>
-ZorbaTruncateCollectionIterator::g_class_factory;
-
-
-void ZorbaTruncateCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaTruncateCollectionIterator::~ZorbaTruncateCollectionIterator() {}
-
-// </ZorbaTruncateCollectionIterator>
-
-
-// <ZorbaCollectionNameIterator>
-ZorbaCollectionNameIterator::class_factory<ZorbaCollectionNameIterator>
-ZorbaCollectionNameIterator::g_class_factory;
-
-
-void ZorbaCollectionNameIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ZorbaCollectionNameIterator::~ZorbaCollectionNameIterator() {}
-
-// </ZorbaCollectionNameIterator>
-
-
-// <IsAvailableCollectionIterator>
-IsAvailableCollectionIterator::class_factory<IsAvailableCollectionIterator>
-IsAvailableCollectionIterator::g_class_factory;
-
-
-void IsAvailableCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsAvailableCollectionIterator::~IsAvailableCollectionIterator() {}
-
-// </IsAvailableCollectionIterator>
-
-
-// <AvailableCollectionsIterator>
-AvailableCollectionsIterator::class_factory<AvailableCollectionsIterator>
-AvailableCollectionsIterator::g_class_factory;
-
-
-void AvailableCollectionsIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-AvailableCollectionsIterator::~AvailableCollectionsIterator() {}
-
-AvailableCollectionsIteratorState::AvailableCollectionsIteratorState() {}
-
-// </AvailableCollectionsIterator>
-
-
-// <IsAvailableIndexIterator>
-IsAvailableIndexIterator::class_factory<IsAvailableIndexIterator>
-IsAvailableIndexIterator::g_class_factory;
-
-
-void IsAvailableIndexIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsAvailableIndexIterator::~IsAvailableIndexIterator() {}
-
-// </IsAvailableIndexIterator>
-
-
-// <AvailableIndexesIterator>
-AvailableIndexesIterator::class_factory<AvailableIndexesIterator>
-AvailableIndexesIterator::g_class_factory;
-
-
-void AvailableIndexesIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-AvailableIndexesIterator::~AvailableIndexesIterator() {}
-
-AvailableIndexesIteratorState::AvailableIndexesIteratorState() {}
-
-// </AvailableIndexesIterator>
-
-
-// <IsActivatedICIterator>
-IsActivatedICIterator::class_factory<IsActivatedICIterator>
-IsActivatedICIterator::g_class_factory;
-
-
-void IsActivatedICIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsActivatedICIterator::~IsActivatedICIterator() {}
-
-// </IsActivatedICIterator>
-
-
-// <ActivatedICsIterator>
-ActivatedICsIterator::class_factory<ActivatedICsIterator>
-ActivatedICsIterator::g_class_factory;
-
-
-void ActivatedICsIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ActivatedICsIterator::~ActivatedICsIterator() {}
-
-ActivatedICsIteratorState::ActivatedICsIteratorState() {}
-
-// </ActivatedICsIterator>
-
-
-// <IsDeclaredCollectionIterator>
-IsDeclaredCollectionIterator::class_factory<IsDeclaredCollectionIterator>
-IsDeclaredCollectionIterator::g_class_factory;
-
-
-void IsDeclaredCollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsDeclaredCollectionIterator::~IsDeclaredCollectionIterator() {}
-
-// </IsDeclaredCollectionIterator>
-
-
-// <DeclaredCollectionsIterator>
-DeclaredCollectionsIterator::class_factory<DeclaredCollectionsIterator>
-DeclaredCollectionsIterator::g_class_factory;
-
-
-void DeclaredCollectionsIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DeclaredCollectionsIterator::~DeclaredCollectionsIterator() {}
-
-DeclaredCollectionsIteratorState::DeclaredCollectionsIteratorState() {}
-
-// </DeclaredCollectionsIterator>
-
-
-// <IsDeclaredIndexIterator>
-IsDeclaredIndexIterator::class_factory<IsDeclaredIndexIterator>
-IsDeclaredIndexIterator::g_class_factory;
-
-
-void IsDeclaredIndexIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsDeclaredIndexIterator::~IsDeclaredIndexIterator() {}
-
-// </IsDeclaredIndexIterator>
-
-
-// <DeclaredIndexesIterator>
-DeclaredIndexesIterator::class_factory<DeclaredIndexesIterator>
-DeclaredIndexesIterator::g_class_factory;
-
-
-void DeclaredIndexesIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DeclaredIndexesIterator::~DeclaredIndexesIterator() {}
-
-DeclaredIndexesIteratorState::DeclaredIndexesIteratorState() {}
-
-
-void DeclaredIndexesIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- nameItState = NULL;
-}
-// </DeclaredIndexesIterator>
-
-
-// <IsDeclaredICIterator>
-IsDeclaredICIterator::class_factory<IsDeclaredICIterator>
-IsDeclaredICIterator::g_class_factory;
-
-
-void IsDeclaredICIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-IsDeclaredICIterator::~IsDeclaredICIterator() {}
-
-// </IsDeclaredICIterator>
-
-
-// <DeclaredICsIterator>
-DeclaredICsIterator::class_factory<DeclaredICsIterator>
-DeclaredICsIterator::g_class_factory;
-
-
-void DeclaredICsIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DeclaredICsIterator::~DeclaredICsIterator() {}
-
-DeclaredICsIteratorState::DeclaredICsIteratorState() {}
-
-
-void DeclaredICsIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- nameItState = NULL;
-}
-// </DeclaredICsIterator>
-
-
-// <FnURICollectionIterator>
-FnURICollectionIterator::class_factory<FnURICollectionIterator>
-FnURICollectionIterator::g_class_factory;
-
-
-void FnURICollectionIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-FnURICollectionIterator::~FnURICollectionIterator() {}
-
-FnURICollectionIteratorState::FnURICollectionIteratorState() {}
-
-// </FnURICollectionIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/collections/collections.h"
+#include "system/globalenv.h"
+
+
+#include "store/api/iterator.h"
+
+namespace zorba {
+
+// <FnCollectionIterator>
+FnCollectionIterator::class_factory<FnCollectionIterator>
+FnCollectionIterator::g_class_factory;
+
+
+void FnCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+FnCollectionIterator::~FnCollectionIterator() {}
+
+FnCollectionIteratorState::FnCollectionIteratorState() {}
+
+// </FnCollectionIterator>
+
+
+// <ZorbaCollectionIterator>
+ZorbaCollectionIterator::class_factory<ZorbaCollectionIterator>
+ZorbaCollectionIterator::g_class_factory;
+
+
+void ZorbaCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaCollectionIterator::~ZorbaCollectionIterator() {}
+
+ZorbaCollectionIteratorState::ZorbaCollectionIteratorState() {}
+
+// </ZorbaCollectionIterator>
+
+
+// <ZorbaIndexOfIterator>
+ZorbaIndexOfIterator::class_factory<ZorbaIndexOfIterator>
+ZorbaIndexOfIterator::g_class_factory;
+
+
+void ZorbaIndexOfIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaIndexOfIterator::~ZorbaIndexOfIterator() {}
+
+// </ZorbaIndexOfIterator>
+
+
+// <ZorbaCreateCollectionIterator>
+ZorbaCreateCollectionIterator::class_factory<ZorbaCreateCollectionIterator>
+ZorbaCreateCollectionIterator::g_class_factory;
+
+
+void ZorbaCreateCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaCreateCollectionIterator::~ZorbaCreateCollectionIterator() {}
+
+// </ZorbaCreateCollectionIterator>
+
+
+// <ZorbaDeleteCollectionIterator>
+ZorbaDeleteCollectionIterator::class_factory<ZorbaDeleteCollectionIterator>
+ZorbaDeleteCollectionIterator::g_class_factory;
+
+
+void ZorbaDeleteCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaDeleteCollectionIterator::~ZorbaDeleteCollectionIterator() {}
+
+// </ZorbaDeleteCollectionIterator>
+
+
+// <ZorbaInsertNodesIterator>
+ZorbaInsertNodesIterator::class_factory<ZorbaInsertNodesIterator>
+ZorbaInsertNodesIterator::g_class_factory;
+
+
+void ZorbaInsertNodesIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaInsertNodesIterator::~ZorbaInsertNodesIterator() {}
+
+// </ZorbaInsertNodesIterator>
+
+
+// <ZorbaInsertNodesFirstIterator>
+ZorbaInsertNodesFirstIterator::class_factory<ZorbaInsertNodesFirstIterator>
+ZorbaInsertNodesFirstIterator::g_class_factory;
+
+
+void ZorbaInsertNodesFirstIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaInsertNodesFirstIterator::~ZorbaInsertNodesFirstIterator() {}
+
+// </ZorbaInsertNodesFirstIterator>
+
+
+// <ZorbaInsertNodesLastIterator>
+ZorbaInsertNodesLastIterator::class_factory<ZorbaInsertNodesLastIterator>
+ZorbaInsertNodesLastIterator::g_class_factory;
+
+
+void ZorbaInsertNodesLastIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaInsertNodesLastIterator::~ZorbaInsertNodesLastIterator() {}
+
+// </ZorbaInsertNodesLastIterator>
+
+
+// <ZorbaInsertNodesBeforeIterator>
+ZorbaInsertNodesBeforeIterator::class_factory<ZorbaInsertNodesBeforeIterator>
+ZorbaInsertNodesBeforeIterator::g_class_factory;
+
+
+void ZorbaInsertNodesBeforeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaInsertNodesBeforeIterator::~ZorbaInsertNodesBeforeIterator() {}
+
+// </ZorbaInsertNodesBeforeIterator>
+
+
+// <ZorbaInsertNodesAfterIterator>
+ZorbaInsertNodesAfterIterator::class_factory<ZorbaInsertNodesAfterIterator>
+ZorbaInsertNodesAfterIterator::g_class_factory;
+
+
+void ZorbaInsertNodesAfterIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaInsertNodesAfterIterator::~ZorbaInsertNodesAfterIterator() {}
+
+// </ZorbaInsertNodesAfterIterator>
+
+
+// <ZorbaApplyInsertNodesIterator>
+ZorbaApplyInsertNodesIterator::class_factory<ZorbaApplyInsertNodesIterator>
+ZorbaApplyInsertNodesIterator::g_class_factory;
+
+
+void ZorbaApplyInsertNodesIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaApplyInsertNodesIterator::~ZorbaApplyInsertNodesIterator() {}
+
+ZorbaApplyInsertNodesIteratorState::ZorbaApplyInsertNodesIteratorState() {}
+
+// </ZorbaApplyInsertNodesIterator>
+
+
+// <ZorbaApplyInsertNodesFirstIterator>
+ZorbaApplyInsertNodesFirstIterator::class_factory<ZorbaApplyInsertNodesFirstIterator>
+ZorbaApplyInsertNodesFirstIterator::g_class_factory;
+
+
+void ZorbaApplyInsertNodesFirstIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaApplyInsertNodesFirstIterator::~ZorbaApplyInsertNodesFirstIterator() {}
+
+ZorbaApplyInsertNodesFirstIteratorState::ZorbaApplyInsertNodesFirstIteratorState() {}
+
+// </ZorbaApplyInsertNodesFirstIterator>
+
+
+// <ZorbaApplyInsertNodesLastIterator>
+ZorbaApplyInsertNodesLastIterator::class_factory<ZorbaApplyInsertNodesLastIterator>
+ZorbaApplyInsertNodesLastIterator::g_class_factory;
+
+
+void ZorbaApplyInsertNodesLastIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaApplyInsertNodesLastIterator::~ZorbaApplyInsertNodesLastIterator() {}
+
+ZorbaApplyInsertNodesLastIteratorState::ZorbaApplyInsertNodesLastIteratorState() {}
+
+// </ZorbaApplyInsertNodesLastIterator>
+
+
+// <ZorbaApplyInsertNodesBeforeIterator>
+ZorbaApplyInsertNodesBeforeIterator::class_factory<ZorbaApplyInsertNodesBeforeIterator>
+ZorbaApplyInsertNodesBeforeIterator::g_class_factory;
+
+
+void ZorbaApplyInsertNodesBeforeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaApplyInsertNodesBeforeIterator::~ZorbaApplyInsertNodesBeforeIterator() {}
+
+ZorbaApplyInsertNodesBeforeIteratorState::ZorbaApplyInsertNodesBeforeIteratorState() {}
+
+// </ZorbaApplyInsertNodesBeforeIterator>
+
+
+// <ZorbaApplyInsertNodesAfterIterator>
+ZorbaApplyInsertNodesAfterIterator::class_factory<ZorbaApplyInsertNodesAfterIterator>
+ZorbaApplyInsertNodesAfterIterator::g_class_factory;
+
+
+void ZorbaApplyInsertNodesAfterIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaApplyInsertNodesAfterIterator::~ZorbaApplyInsertNodesAfterIterator() {}
+
+ZorbaApplyInsertNodesAfterIteratorState::ZorbaApplyInsertNodesAfterIteratorState() {}
+
+// </ZorbaApplyInsertNodesAfterIterator>
+
+
+// <ZorbaDeleteNodesIterator>
+ZorbaDeleteNodesIterator::class_factory<ZorbaDeleteNodesIterator>
+ZorbaDeleteNodesIterator::g_class_factory;
+
+
+void ZorbaDeleteNodesIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaDeleteNodesIterator::~ZorbaDeleteNodesIterator() {}
+
+// </ZorbaDeleteNodesIterator>
+
+
+// <ZorbaDeleteNodesFirstIterator>
+ZorbaDeleteNodesFirstIterator::class_factory<ZorbaDeleteNodesFirstIterator>
+ZorbaDeleteNodesFirstIterator::g_class_factory;
+
+
+void ZorbaDeleteNodesFirstIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaDeleteNodesFirstIterator::~ZorbaDeleteNodesFirstIterator() {}
+
+// </ZorbaDeleteNodesFirstIterator>
+
+
+// <ZorbaDeleteNodesLastIterator>
+ZorbaDeleteNodesLastIterator::class_factory<ZorbaDeleteNodesLastIterator>
+ZorbaDeleteNodesLastIterator::g_class_factory;
+
+
+void ZorbaDeleteNodesLastIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaDeleteNodesLastIterator::~ZorbaDeleteNodesLastIterator() {}
+
+// </ZorbaDeleteNodesLastIterator>
+
+
+// <ZorbaTruncateCollectionIterator>
+ZorbaTruncateCollectionIterator::class_factory<ZorbaTruncateCollectionIterator>
+ZorbaTruncateCollectionIterator::g_class_factory;
+
+
+void ZorbaTruncateCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaTruncateCollectionIterator::~ZorbaTruncateCollectionIterator() {}
+
+// </ZorbaTruncateCollectionIterator>
+
+
+// <ZorbaCollectionNameIterator>
+ZorbaCollectionNameIterator::class_factory<ZorbaCollectionNameIterator>
+ZorbaCollectionNameIterator::g_class_factory;
+
+
+void ZorbaCollectionNameIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ZorbaCollectionNameIterator::~ZorbaCollectionNameIterator() {}
+
+// </ZorbaCollectionNameIterator>
+
+
+// <IsAvailableCollectionIterator>
+IsAvailableCollectionIterator::class_factory<IsAvailableCollectionIterator>
+IsAvailableCollectionIterator::g_class_factory;
+
+
+void IsAvailableCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsAvailableCollectionIterator::~IsAvailableCollectionIterator() {}
+
+// </IsAvailableCollectionIterator>
+
+
+// <AvailableCollectionsIterator>
+AvailableCollectionsIterator::class_factory<AvailableCollectionsIterator>
+AvailableCollectionsIterator::g_class_factory;
+
+
+void AvailableCollectionsIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+AvailableCollectionsIterator::~AvailableCollectionsIterator() {}
+
+AvailableCollectionsIteratorState::AvailableCollectionsIteratorState() {}
+
+// </AvailableCollectionsIterator>
+
+
+// <IsAvailableIndexIterator>
+IsAvailableIndexIterator::class_factory<IsAvailableIndexIterator>
+IsAvailableIndexIterator::g_class_factory;
+
+
+void IsAvailableIndexIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsAvailableIndexIterator::~IsAvailableIndexIterator() {}
+
+// </IsAvailableIndexIterator>
+
+
+// <AvailableIndexesIterator>
+AvailableIndexesIterator::class_factory<AvailableIndexesIterator>
+AvailableIndexesIterator::g_class_factory;
+
+
+void AvailableIndexesIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+AvailableIndexesIterator::~AvailableIndexesIterator() {}
+
+AvailableIndexesIteratorState::AvailableIndexesIteratorState() {}
+
+// </AvailableIndexesIterator>
+
+
+// <IsActivatedICIterator>
+IsActivatedICIterator::class_factory<IsActivatedICIterator>
+IsActivatedICIterator::g_class_factory;
+
+
+void IsActivatedICIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsActivatedICIterator::~IsActivatedICIterator() {}
+
+// </IsActivatedICIterator>
+
+
+// <ActivatedICsIterator>
+ActivatedICsIterator::class_factory<ActivatedICsIterator>
+ActivatedICsIterator::g_class_factory;
+
+
+void ActivatedICsIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ActivatedICsIterator::~ActivatedICsIterator() {}
+
+ActivatedICsIteratorState::ActivatedICsIteratorState() {}
+
+// </ActivatedICsIterator>
+
+
+// <IsDeclaredCollectionIterator>
+IsDeclaredCollectionIterator::class_factory<IsDeclaredCollectionIterator>
+IsDeclaredCollectionIterator::g_class_factory;
+
+
+void IsDeclaredCollectionIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsDeclaredCollectionIterator::~IsDeclaredCollectionIterator() {}
+
+// </IsDeclaredCollectionIterator>
+
+
+// <DeclaredCollectionsIterator>
+DeclaredCollectionsIterator::class_factory<DeclaredCollectionsIterator>
+DeclaredCollectionsIterator::g_class_factory;
+
+
+void DeclaredCollectionsIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DeclaredCollectionsIterator::~DeclaredCollectionsIterator() {}
+
+DeclaredCollectionsIteratorState::DeclaredCollectionsIteratorState() {}
+
+// </DeclaredCollectionsIterator>
+
+
+// <IsDeclaredIndexIterator>
+IsDeclaredIndexIterator::class_factory<IsDeclaredIndexIterator>
+IsDeclaredIndexIterator::g_class_factory;
+
+
+void IsDeclaredIndexIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsDeclaredIndexIterator::~IsDeclaredIndexIterator() {}
+
+// </IsDeclaredIndexIterator>
+
+
+// <DeclaredIndexesIterator>
+DeclaredIndexesIterator::class_factory<DeclaredIndexesIterator>
+DeclaredIndexesIterator::g_class_factory;
+
+
+void DeclaredIndexesIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DeclaredIndexesIterator::~DeclaredIndexesIterator() {}
+
+DeclaredIndexesIteratorState::DeclaredIndexesIteratorState() {}
+
+
+void DeclaredIndexesIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ nameItState = NULL;
+}
+// </DeclaredIndexesIterator>
+
+
+// <IsDeclaredICIterator>
+IsDeclaredICIterator::class_factory<IsDeclaredICIterator>
+IsDeclaredICIterator::g_class_factory;
+
+
+void IsDeclaredICIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+IsDeclaredICIterator::~IsDeclaredICIterator() {}
+
+// </IsDeclaredICIterator>
+
+
+// <DeclaredICsIterator>
+DeclaredICsIterator::class_factory<DeclaredICsIterator>
+DeclaredICsIterator::g_class_factory;
+
+
+void DeclaredICsIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DeclaredICsIterator::~DeclaredICsIterator() {}
+
+DeclaredICsIteratorState::DeclaredICsIteratorState() {}
+
+
+void DeclaredICsIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ nameItState = NULL;
+}
+// </DeclaredICsIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/collections/pregenerated/collections.h'
--- src/runtime/collections/pregenerated/collections.h 2012-04-24 12:39:38 +0000
+++ src/runtime/collections/pregenerated/collections.h 2012-05-02 06:48:21 +0000
@@ -1,1527 +1,1476 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_COLLECTIONS_COLLECTIONS_H
-#define ZORBA_RUNTIME_COLLECTIONS_COLLECTIONS_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-#include "runtime/collections/collections_base.h"
-
-
-namespace zorba {
-class StaticallyKnownCollection;
-/**
- *
- * fn:collection
- *
- * Author: Zorba Team
- */
-class FnCollectionIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t theIterator; //the current iterator
- bool theIteratorOpened; //flag indicating whether theIterator was opened
-
- FnCollectionIteratorState();
-
- ~FnCollectionIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class FnCollectionIterator : public NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(FnCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnCollectionIterator,
- NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>*)this);
- }
-
- FnCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>(sctx, loc, children)
- {}
-
- virtual ~FnCollectionIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:collection
- *
- * Author: Zorba Team
- */
-class ZorbaCollectionIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t theIterator; //the current iterator
- bool theIteratorOpened; //flag indicating whether theIterator was opened
-
- ZorbaCollectionIteratorState();
-
- ~ZorbaCollectionIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaCollectionIterator : public NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCollectionIterator,
- NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaCollectionIterator();
-
- bool isDynamic() const { return theDynamicCollection; }
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:index-of
- *
- * Author: Zorba Team
- */
-class ZorbaIndexOfIterator : public NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaIndexOfIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaIndexOfIterator,
- NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaIndexOfIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaIndexOfIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:create
- *
- * Author: Zorba Team
- */
-class ZorbaCreateCollectionIterator : public NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaCreateCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCreateCollectionIterator,
- NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaCreateCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaCreateCollectionIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:delete
- *
- * Author: Zorba Team
- */
-class ZorbaDeleteCollectionIterator : public NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaDeleteCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteCollectionIterator,
- NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaDeleteCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaDeleteCollectionIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:insert-nodes
- *
- * Author: Zorba Team
- */
-class ZorbaInsertNodesIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaInsertNodesIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesIterator,
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>*)this);
- }
-
- ZorbaInsertNodesIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaInsertNodesIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:insert-nodes-first
- *
- * Author: Zorba Team
- */
-class ZorbaInsertNodesFirstIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaInsertNodesFirstIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesFirstIterator,
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>*)this);
- }
-
- ZorbaInsertNodesFirstIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaInsertNodesFirstIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:insert-nodes-last
- *
- * Author: Zorba Team
- */
-class ZorbaInsertNodesLastIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaInsertNodesLastIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesLastIterator,
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>*)this);
- }
-
- ZorbaInsertNodesLastIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaInsertNodesLastIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:insert-nodes-before
- *
- * Author: Zorba Team
- */
-class ZorbaInsertNodesBeforeIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaInsertNodesBeforeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesBeforeIterator,
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>*)this);
- }
-
- ZorbaInsertNodesBeforeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaInsertNodesBeforeIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:insert-nodes-after
- *
- * Author: Zorba Team
- */
-class ZorbaInsertNodesAfterIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaInsertNodesAfterIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesAfterIterator,
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaInsertNodesAfterIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaInsertNodesAfterIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:apply-insert-nodes
- *
- * Author: Zorba Team
- */
-class ZorbaApplyInsertNodesIteratorState : public PlanIteratorState
-{
-public:
- std::vector<store::Item_t> nodes; //the nodes that have been inserted
- std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
-
- ZorbaApplyInsertNodesIteratorState();
-
- ~ZorbaApplyInsertNodesIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaApplyInsertNodesIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaApplyInsertNodesIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesIterator,
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>*)this);
- }
-
- ZorbaApplyInsertNodesIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaApplyInsertNodesIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:apply-insertnodes-first
- *
- * Author: Zorba Team
- */
-class ZorbaApplyInsertNodesFirstIteratorState : public PlanIteratorState
-{
-public:
- std::vector<store::Item_t> nodes; //the nodes that have been inserted
- std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
-
- ZorbaApplyInsertNodesFirstIteratorState();
-
- ~ZorbaApplyInsertNodesFirstIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaApplyInsertNodesFirstIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaApplyInsertNodesFirstIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesFirstIterator,
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>*)this);
- }
-
- ZorbaApplyInsertNodesFirstIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaApplyInsertNodesFirstIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:apply-insertnodes-last
- *
- * Author: Zorba Team
- */
-class ZorbaApplyInsertNodesLastIteratorState : public PlanIteratorState
-{
-public:
- std::vector<store::Item_t> nodes; //the nodes that have been inserted
- std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
-
- ZorbaApplyInsertNodesLastIteratorState();
-
- ~ZorbaApplyInsertNodesLastIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaApplyInsertNodesLastIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaApplyInsertNodesLastIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesLastIterator,
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>*)this);
- }
-
- ZorbaApplyInsertNodesLastIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaApplyInsertNodesLastIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:apply-insert-nodes-before
- *
- * Author: Zorba Team
- */
-class ZorbaApplyInsertNodesBeforeIteratorState : public PlanIteratorState
-{
-public:
- std::vector<store::Item_t> nodes; //the nodes that have been inserted
- std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
-
- ZorbaApplyInsertNodesBeforeIteratorState();
-
- ~ZorbaApplyInsertNodesBeforeIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaApplyInsertNodesBeforeIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaApplyInsertNodesBeforeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesBeforeIterator,
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>*)this);
- }
-
- ZorbaApplyInsertNodesBeforeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaApplyInsertNodesBeforeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:apply-insertnodes-after
- *
- * Author: Zorba Team
- */
-class ZorbaApplyInsertNodesAfterIteratorState : public PlanIteratorState
-{
-public:
- std::vector<store::Item_t> nodes; //the nodes that have been inserted
- std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
-
- ZorbaApplyInsertNodesAfterIteratorState();
-
- ~ZorbaApplyInsertNodesAfterIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ZorbaApplyInsertNodesAfterIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaApplyInsertNodesAfterIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesAfterIterator,
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>*)this);
- }
-
- ZorbaApplyInsertNodesAfterIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>(sctx, loc, children, aDynamicCollection)
- {}
-
- virtual ~ZorbaApplyInsertNodesAfterIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:delete-nodes
- *
- * Author: Zorba Team
- */
-class ZorbaDeleteNodesIterator : public NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaDeleteNodesIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesIterator,
- NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaDeleteNodesIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaDeleteNodesIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:delete-node-first
- *
- * Author: Zorba Team
- */
-class ZorbaDeleteNodesFirstIterator : public NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaDeleteNodesFirstIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesFirstIterator,
- NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaDeleteNodesFirstIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaDeleteNodesFirstIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:delete-node-last
- *
- * Author: Zorba Team
- */
-class ZorbaDeleteNodesLastIterator : public NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaDeleteNodesLastIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesLastIterator,
- NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaDeleteNodesLastIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaDeleteNodesLastIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:truncate
- *
- * Author: Zorba Team
- */
-class ZorbaTruncateCollectionIterator : public NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(ZorbaTruncateCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaTruncateCollectionIterator,
- NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- ZorbaTruncateCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~ZorbaTruncateCollectionIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * zorba:collection-name
- *
- * Author: Zorba Team
- */
-class ZorbaCollectionNameIterator : public NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ZorbaCollectionNameIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCollectionNameIterator,
- NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>*)this);
- }
-
- ZorbaCollectionNameIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~ZorbaCollectionNameIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:is-available-collection
- *
- * Author: Zorba Team
- */
-class IsAvailableCollectionIterator : public NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(IsAvailableCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsAvailableCollectionIterator,
- NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- IsAvailableCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~IsAvailableCollectionIterator();
-
-public:
- const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:available-collections
- *
- * Author: Zorba Team
- */
-class AvailableCollectionsIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- AvailableCollectionsIteratorState();
-
- ~AvailableCollectionsIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class AvailableCollectionsIterator : public NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>
-{
-protected:
- bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
-public:
- SERIALIZABLE_CLASS(AvailableCollectionsIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(AvailableCollectionsIterator,
- NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>*)this);
-
- ar & theDynamicCollection;
- }
-
- AvailableCollectionsIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children,
- bool aDynamicCollection)
- :
- NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>(sctx, loc, children),
- theDynamicCollection(aDynamicCollection)
- {}
-
- virtual ~AvailableCollectionsIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:is-available-index
- *
- * Author: Zorba Team
- */
-class IsAvailableIndexIterator : public NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsAvailableIndexIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsAvailableIndexIterator,
- NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>*)this);
- }
-
- IsAvailableIndexIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsAvailableIndexIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:available-indexes
- *
- * Author: Zorba Team
- */
-class AvailableIndexesIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- AvailableIndexesIteratorState();
-
- ~AvailableIndexesIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class AvailableIndexesIterator : public NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(AvailableIndexesIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(AvailableIndexesIterator,
- NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>*)this);
- }
-
- AvailableIndexesIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>(sctx, loc, children)
- {}
-
- virtual ~AvailableIndexesIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:is-activated-integrity-constraint
- *
- * Author: Zorba Team
- */
-class IsActivatedICIterator : public NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsActivatedICIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsActivatedICIterator,
- NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>*)this);
- }
-
- IsActivatedICIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsActivatedICIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * dc:activated-integrity-constraints
- *
- * Author: Zorba Team
- */
-class ActivatedICsIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- ActivatedICsIteratorState();
-
- ~ActivatedICsIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class ActivatedICsIterator : public NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ActivatedICsIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ActivatedICsIterator,
- NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>*)this);
- }
-
- ActivatedICsIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>(sctx, loc, children)
- {}
-
- virtual ~ActivatedICsIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:is-declared-collection
- *
- * Author: Zorba Team
- */
-class IsDeclaredCollectionIterator : public NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsDeclaredCollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredCollectionIterator,
- NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>*)this);
- }
-
- IsDeclaredCollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsDeclaredCollectionIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:declared-collections
- *
- * Author: Zorba Team
- */
-class DeclaredCollectionsIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- DeclaredCollectionsIteratorState();
-
- ~DeclaredCollectionsIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class DeclaredCollectionsIterator : public NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DeclaredCollectionsIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredCollectionsIterator,
- NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>*)this);
- }
-
- DeclaredCollectionsIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DeclaredCollectionsIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:is-declared-index
- *
- * Author: Zorba Team
- */
-class IsDeclaredIndexIterator : public NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsDeclaredIndexIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredIndexIterator,
- NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>*)this);
- }
-
- IsDeclaredIndexIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsDeclaredIndexIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:declared-indexes
- *
- * Author: Zorba Team
- */
-class DeclaredIndexesIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- DeclaredIndexesIteratorState();
-
- ~DeclaredIndexesIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class DeclaredIndexesIterator : public NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DeclaredIndexesIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredIndexesIterator,
- NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>*)this);
- }
-
- DeclaredIndexesIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DeclaredIndexesIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:is-declared-integrity-constraint
- *
- * Author: Zorba Team
- */
-class IsDeclaredICIterator : public NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(IsDeclaredICIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredICIterator,
- NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>*)this);
- }
-
- IsDeclaredICIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~IsDeclaredICIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * sc:declared-integrity-constrints
- *
- * Author: Zorba Team
- */
-class DeclaredICsIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t nameItState; //the current iterator
-
- DeclaredICsIteratorState();
-
- ~DeclaredICsIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class DeclaredICsIterator : public NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DeclaredICsIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredICsIterator,
- NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>*)this);
- }
-
- DeclaredICsIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DeclaredICsIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- *
- * Returns a sequence of xs:anyURI values representing the document URIs of the
- * documents in a collection.
- *
- * Author: Zorba Team
- */
-class FnURICollectionIteratorState : public PlanIteratorState
-{
-public:
- store::Iterator_t theIterator; //the current iterator
- bool theIteratorOpened; //flag indicating whether theIterator was opened
-
- FnURICollectionIteratorState();
-
- ~FnURICollectionIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class FnURICollectionIterator : public NaryBaseIterator<FnURICollectionIterator, FnURICollectionIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(FnURICollectionIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnURICollectionIterator,
- NaryBaseIterator<FnURICollectionIterator, FnURICollectionIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<FnURICollectionIterator, FnURICollectionIteratorState>*)this);
- }
-
- FnURICollectionIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<FnURICollectionIterator, FnURICollectionIteratorState>(sctx, loc, children)
- {}
-
- virtual ~FnURICollectionIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_COLLECTIONS_COLLECTIONS_H
+#define ZORBA_RUNTIME_COLLECTIONS_COLLECTIONS_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+#include "runtime/collections/collections_base.h"
+
+
+namespace zorba {
+class StaticallyKnownCollection;
+/**
+ *
+ * fn:collection
+ *
+ * Author: Zorba Team
+ */
+class FnCollectionIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t theIterator; //the current iterator
+ bool theIteratorOpened; //flag indicating whether theIterator was opened
+
+ FnCollectionIteratorState();
+
+ ~FnCollectionIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class FnCollectionIterator : public NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(FnCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnCollectionIterator,
+ NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>*)this);
+ }
+
+ FnCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<FnCollectionIterator, FnCollectionIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~FnCollectionIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:collection
+ *
+ * Author: Zorba Team
+ */
+class ZorbaCollectionIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t theIterator; //the current iterator
+ bool theIteratorOpened; //flag indicating whether theIterator was opened
+
+ ZorbaCollectionIteratorState();
+
+ ~ZorbaCollectionIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaCollectionIterator : public NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCollectionIterator,
+ NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaCollectionIterator, ZorbaCollectionIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaCollectionIterator();
+
+ bool isDynamic() const { return theDynamicCollection; }
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:index-of
+ *
+ * Author: Zorba Team
+ */
+class ZorbaIndexOfIterator : public NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaIndexOfIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaIndexOfIterator,
+ NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaIndexOfIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaIndexOfIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaIndexOfIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:create
+ *
+ * Author: Zorba Team
+ */
+class ZorbaCreateCollectionIterator : public NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaCreateCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCreateCollectionIterator,
+ NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaCreateCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaCreateCollectionIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaCreateCollectionIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:delete
+ *
+ * Author: Zorba Team
+ */
+class ZorbaDeleteCollectionIterator : public NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaDeleteCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteCollectionIterator,
+ NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaDeleteCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaDeleteCollectionIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaDeleteCollectionIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:insert-nodes
+ *
+ * Author: Zorba Team
+ */
+class ZorbaInsertNodesIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaInsertNodesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesIterator,
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>*)this);
+ }
+
+ ZorbaInsertNodesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaInsertNodesIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:insert-nodes-first
+ *
+ * Author: Zorba Team
+ */
+class ZorbaInsertNodesFirstIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaInsertNodesFirstIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesFirstIterator,
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>*)this);
+ }
+
+ ZorbaInsertNodesFirstIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesFirstIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaInsertNodesFirstIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:insert-nodes-last
+ *
+ * Author: Zorba Team
+ */
+class ZorbaInsertNodesLastIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaInsertNodesLastIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesLastIterator,
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>*)this);
+ }
+
+ ZorbaInsertNodesLastIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesLastIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaInsertNodesLastIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:insert-nodes-before
+ *
+ * Author: Zorba Team
+ */
+class ZorbaInsertNodesBeforeIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaInsertNodesBeforeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesBeforeIterator,
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>*)this);
+ }
+
+ ZorbaInsertNodesBeforeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesBeforeIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaInsertNodesBeforeIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:insert-nodes-after
+ *
+ * Author: Zorba Team
+ */
+class ZorbaInsertNodesAfterIterator : public ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaInsertNodesAfterIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaInsertNodesAfterIterator,
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaInsertNodesAfterIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaInsertNodesAfterIterator, PlanIteratorState>(sctx, loc, children, aDynamicCollection),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaInsertNodesAfterIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:apply-insert-nodes
+ *
+ * Author: Zorba Team
+ */
+class ZorbaApplyInsertNodesIteratorState : public PlanIteratorState
+{
+public:
+ std::vector<store::Item_t> nodes; //the nodes that have been inserted
+ std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
+
+ ZorbaApplyInsertNodesIteratorState();
+
+ ~ZorbaApplyInsertNodesIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaApplyInsertNodesIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaApplyInsertNodesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesIterator,
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>*)this);
+ }
+
+ ZorbaApplyInsertNodesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesIterator, ZorbaApplyInsertNodesIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaApplyInsertNodesIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:apply-insertnodes-first
+ *
+ * Author: Zorba Team
+ */
+class ZorbaApplyInsertNodesFirstIteratorState : public PlanIteratorState
+{
+public:
+ std::vector<store::Item_t> nodes; //the nodes that have been inserted
+ std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
+
+ ZorbaApplyInsertNodesFirstIteratorState();
+
+ ~ZorbaApplyInsertNodesFirstIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaApplyInsertNodesFirstIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaApplyInsertNodesFirstIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesFirstIterator,
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>*)this);
+ }
+
+ ZorbaApplyInsertNodesFirstIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesFirstIterator, ZorbaApplyInsertNodesFirstIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaApplyInsertNodesFirstIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:apply-insertnodes-last
+ *
+ * Author: Zorba Team
+ */
+class ZorbaApplyInsertNodesLastIteratorState : public PlanIteratorState
+{
+public:
+ std::vector<store::Item_t> nodes; //the nodes that have been inserted
+ std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
+
+ ZorbaApplyInsertNodesLastIteratorState();
+
+ ~ZorbaApplyInsertNodesLastIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaApplyInsertNodesLastIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaApplyInsertNodesLastIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesLastIterator,
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>*)this);
+ }
+
+ ZorbaApplyInsertNodesLastIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesLastIterator, ZorbaApplyInsertNodesLastIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaApplyInsertNodesLastIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:apply-insert-nodes-before
+ *
+ * Author: Zorba Team
+ */
+class ZorbaApplyInsertNodesBeforeIteratorState : public PlanIteratorState
+{
+public:
+ std::vector<store::Item_t> nodes; //the nodes that have been inserted
+ std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
+
+ ZorbaApplyInsertNodesBeforeIteratorState();
+
+ ~ZorbaApplyInsertNodesBeforeIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaApplyInsertNodesBeforeIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaApplyInsertNodesBeforeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesBeforeIterator,
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>*)this);
+ }
+
+ ZorbaApplyInsertNodesBeforeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesBeforeIterator, ZorbaApplyInsertNodesBeforeIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaApplyInsertNodesBeforeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:apply-insertnodes-after
+ *
+ * Author: Zorba Team
+ */
+class ZorbaApplyInsertNodesAfterIteratorState : public PlanIteratorState
+{
+public:
+ std::vector<store::Item_t> nodes; //the nodes that have been inserted
+ std::vector<store::Item_t>::const_iterator iterator; //iterator over the nodes
+
+ ZorbaApplyInsertNodesAfterIteratorState();
+
+ ~ZorbaApplyInsertNodesAfterIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ZorbaApplyInsertNodesAfterIterator : public ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaApplyInsertNodesAfterIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaApplyInsertNodesAfterIterator,
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>*)this);
+ }
+
+ ZorbaApplyInsertNodesAfterIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ ZorbaCollectionIteratorHelper<ZorbaApplyInsertNodesAfterIterator, ZorbaApplyInsertNodesAfterIteratorState>(sctx, loc, children, aDynamicCollection)
+ {}
+
+ virtual ~ZorbaApplyInsertNodesAfterIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:delete-nodes
+ *
+ * Author: Zorba Team
+ */
+class ZorbaDeleteNodesIterator : public NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaDeleteNodesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesIterator,
+ NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaDeleteNodesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaDeleteNodesIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaDeleteNodesIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:delete-node-first
+ *
+ * Author: Zorba Team
+ */
+class ZorbaDeleteNodesFirstIterator : public NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaDeleteNodesFirstIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesFirstIterator,
+ NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaDeleteNodesFirstIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaDeleteNodesFirstIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaDeleteNodesFirstIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:delete-node-last
+ *
+ * Author: Zorba Team
+ */
+class ZorbaDeleteNodesLastIterator : public NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaDeleteNodesLastIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaDeleteNodesLastIterator,
+ NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaDeleteNodesLastIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaDeleteNodesLastIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaDeleteNodesLastIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:truncate
+ *
+ * Author: Zorba Team
+ */
+class ZorbaTruncateCollectionIterator : public NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(ZorbaTruncateCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaTruncateCollectionIterator,
+ NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ ZorbaTruncateCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<ZorbaTruncateCollectionIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~ZorbaTruncateCollectionIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * zorba:collection-name
+ *
+ * Author: Zorba Team
+ */
+class ZorbaCollectionNameIterator : public NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ZorbaCollectionNameIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ZorbaCollectionNameIterator,
+ NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>*)this);
+ }
+
+ ZorbaCollectionNameIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<ZorbaCollectionNameIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~ZorbaCollectionNameIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:is-available-collection
+ *
+ * Author: Zorba Team
+ */
+class IsAvailableCollectionIterator : public NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(IsAvailableCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsAvailableCollectionIterator,
+ NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ IsAvailableCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<IsAvailableCollectionIterator, PlanIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~IsAvailableCollectionIterator();
+
+public:
+ const StaticallyKnownCollection* getCollection(const static_context* sctx, const store::Item_t& name, const QueryLoc& loc, bool dyn_coll, store::Collection_t& coll) const;
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:available-collections
+ *
+ * Author: Zorba Team
+ */
+class AvailableCollectionsIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ AvailableCollectionsIteratorState();
+
+ ~AvailableCollectionsIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class AvailableCollectionsIterator : public NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>
+{
+protected:
+ bool theDynamicCollection; //whether it's the function of the dynamic or the static collection module
+public:
+ SERIALIZABLE_CLASS(AvailableCollectionsIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(AvailableCollectionsIterator,
+ NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>*)this);
+
+ ar & theDynamicCollection;
+ }
+
+ AvailableCollectionsIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children,
+ bool aDynamicCollection)
+ :
+ NaryBaseIterator<AvailableCollectionsIterator, AvailableCollectionsIteratorState>(sctx, loc, children),
+ theDynamicCollection(aDynamicCollection)
+ {}
+
+ virtual ~AvailableCollectionsIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:is-available-index
+ *
+ * Author: Zorba Team
+ */
+class IsAvailableIndexIterator : public NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsAvailableIndexIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsAvailableIndexIterator,
+ NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>*)this);
+ }
+
+ IsAvailableIndexIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsAvailableIndexIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsAvailableIndexIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:available-indexes
+ *
+ * Author: Zorba Team
+ */
+class AvailableIndexesIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ AvailableIndexesIteratorState();
+
+ ~AvailableIndexesIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class AvailableIndexesIterator : public NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(AvailableIndexesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(AvailableIndexesIterator,
+ NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>*)this);
+ }
+
+ AvailableIndexesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<AvailableIndexesIterator, AvailableIndexesIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~AvailableIndexesIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:is-activated-integrity-constraint
+ *
+ * Author: Zorba Team
+ */
+class IsActivatedICIterator : public NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsActivatedICIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsActivatedICIterator,
+ NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>*)this);
+ }
+
+ IsActivatedICIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsActivatedICIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsActivatedICIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * dc:activated-integrity-constraints
+ *
+ * Author: Zorba Team
+ */
+class ActivatedICsIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ ActivatedICsIteratorState();
+
+ ~ActivatedICsIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class ActivatedICsIterator : public NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ActivatedICsIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ActivatedICsIterator,
+ NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>*)this);
+ }
+
+ ActivatedICsIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<ActivatedICsIterator, ActivatedICsIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~ActivatedICsIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:is-declared-collection
+ *
+ * Author: Zorba Team
+ */
+class IsDeclaredCollectionIterator : public NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsDeclaredCollectionIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredCollectionIterator,
+ NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>*)this);
+ }
+
+ IsDeclaredCollectionIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsDeclaredCollectionIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsDeclaredCollectionIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:declared-collections
+ *
+ * Author: Zorba Team
+ */
+class DeclaredCollectionsIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ DeclaredCollectionsIteratorState();
+
+ ~DeclaredCollectionsIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class DeclaredCollectionsIterator : public NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DeclaredCollectionsIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredCollectionsIterator,
+ NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>*)this);
+ }
+
+ DeclaredCollectionsIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DeclaredCollectionsIterator, DeclaredCollectionsIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DeclaredCollectionsIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:is-declared-index
+ *
+ * Author: Zorba Team
+ */
+class IsDeclaredIndexIterator : public NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsDeclaredIndexIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredIndexIterator,
+ NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>*)this);
+ }
+
+ IsDeclaredIndexIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsDeclaredIndexIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsDeclaredIndexIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:declared-indexes
+ *
+ * Author: Zorba Team
+ */
+class DeclaredIndexesIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ DeclaredIndexesIteratorState();
+
+ ~DeclaredIndexesIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class DeclaredIndexesIterator : public NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DeclaredIndexesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredIndexesIterator,
+ NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>*)this);
+ }
+
+ DeclaredIndexesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DeclaredIndexesIterator, DeclaredIndexesIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DeclaredIndexesIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:is-declared-integrity-constraint
+ *
+ * Author: Zorba Team
+ */
+class IsDeclaredICIterator : public NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(IsDeclaredICIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(IsDeclaredICIterator,
+ NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>*)this);
+ }
+
+ IsDeclaredICIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<IsDeclaredICIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~IsDeclaredICIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * sc:declared-integrity-constrints
+ *
+ * Author: Zorba Team
+ */
+class DeclaredICsIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t nameItState; //the current iterator
+
+ DeclaredICsIteratorState();
+
+ ~DeclaredICsIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class DeclaredICsIterator : public NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DeclaredICsIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DeclaredICsIterator,
+ NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>*)this);
+ }
+
+ DeclaredICsIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DeclaredICsIterator, DeclaredICsIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DeclaredICsIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/context/pregenerated/context.cpp'
--- src/runtime/context/pregenerated/context.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/context/pregenerated/context.cpp 2012-05-02 06:48:21 +0000
@@ -1,148 +1,148 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/context/context.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <CurrentDateTimeIterator>
-CurrentDateTimeIterator::class_factory<CurrentDateTimeIterator>
-CurrentDateTimeIterator::g_class_factory;
-
-
-void CurrentDateTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-CurrentDateTimeIterator::~CurrentDateTimeIterator() {}
-
-// </CurrentDateTimeIterator>
-
-
-// <CurrentDateIterator>
-CurrentDateIterator::class_factory<CurrentDateIterator>
-CurrentDateIterator::g_class_factory;
-
-
-void CurrentDateIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-CurrentDateIterator::~CurrentDateIterator() {}
-
-// </CurrentDateIterator>
-
-
-// <CurrentTimeIterator>
-CurrentTimeIterator::class_factory<CurrentTimeIterator>
-CurrentTimeIterator::g_class_factory;
-
-
-void CurrentTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-CurrentTimeIterator::~CurrentTimeIterator() {}
-
-// </CurrentTimeIterator>
-
-
-// <ImplicitTimezoneIterator>
-ImplicitTimezoneIterator::class_factory<ImplicitTimezoneIterator>
-ImplicitTimezoneIterator::g_class_factory;
-
-
-void ImplicitTimezoneIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ImplicitTimezoneIterator::~ImplicitTimezoneIterator() {}
-
-// </ImplicitTimezoneIterator>
-
-
-// <DefaultCollationIterator>
-DefaultCollationIterator::class_factory<DefaultCollationIterator>
-DefaultCollationIterator::g_class_factory;
-
-
-void DefaultCollationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DefaultCollationIterator::~DefaultCollationIterator() {}
-
-// </DefaultCollationIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/context/context.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <CurrentDateTimeIterator>
+CurrentDateTimeIterator::class_factory<CurrentDateTimeIterator>
+CurrentDateTimeIterator::g_class_factory;
+
+
+void CurrentDateTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+CurrentDateTimeIterator::~CurrentDateTimeIterator() {}
+
+// </CurrentDateTimeIterator>
+
+
+// <CurrentDateIterator>
+CurrentDateIterator::class_factory<CurrentDateIterator>
+CurrentDateIterator::g_class_factory;
+
+
+void CurrentDateIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+CurrentDateIterator::~CurrentDateIterator() {}
+
+// </CurrentDateIterator>
+
+
+// <CurrentTimeIterator>
+CurrentTimeIterator::class_factory<CurrentTimeIterator>
+CurrentTimeIterator::g_class_factory;
+
+
+void CurrentTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+CurrentTimeIterator::~CurrentTimeIterator() {}
+
+// </CurrentTimeIterator>
+
+
+// <ImplicitTimezoneIterator>
+ImplicitTimezoneIterator::class_factory<ImplicitTimezoneIterator>
+ImplicitTimezoneIterator::g_class_factory;
+
+
+void ImplicitTimezoneIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ImplicitTimezoneIterator::~ImplicitTimezoneIterator() {}
+
+// </ImplicitTimezoneIterator>
+
+
+// <DefaultCollationIterator>
+DefaultCollationIterator::class_factory<DefaultCollationIterator>
+DefaultCollationIterator::g_class_factory;
+
+
+void DefaultCollationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DefaultCollationIterator::~DefaultCollationIterator() {}
+
+// </DefaultCollationIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/context/pregenerated/context.h'
--- src/runtime/context/pregenerated/context.h 2012-04-24 12:39:38 +0000
+++ src/runtime/context/pregenerated/context.h 2012-05-02 06:48:21 +0000
@@ -1,212 +1,212 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_CONTEXT_CONTEXT_H
-#define ZORBA_RUNTIME_CONTEXT_CONTEXT_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * fn:current-dateTime
- * Author: Zorba Team
- */
-class CurrentDateTimeIterator : public NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(CurrentDateTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentDateTimeIterator,
- NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>*)this);
- }
-
- CurrentDateTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~CurrentDateTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:current-date
- * Author: Zorba Team
- */
-class CurrentDateIterator : public NaryBaseIterator<CurrentDateIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(CurrentDateIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentDateIterator,
- NaryBaseIterator<CurrentDateIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<CurrentDateIterator, PlanIteratorState>*)this);
- }
-
- CurrentDateIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<CurrentDateIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~CurrentDateIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:current-time
- * Author: Zorba Team
- */
-class CurrentTimeIterator : public NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(CurrentTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentTimeIterator,
- NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>*)this);
- }
-
- CurrentTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~CurrentTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:implicit-timezone
- * Author: Zorba Team
- */
-class ImplicitTimezoneIterator : public NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ImplicitTimezoneIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ImplicitTimezoneIterator,
- NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>*)this);
- }
-
- ImplicitTimezoneIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~ImplicitTimezoneIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:default-collation
- * Author: Zorba Team
- */
-class DefaultCollationIterator : public NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DefaultCollationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DefaultCollationIterator,
- NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>*)this);
- }
-
- DefaultCollationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DefaultCollationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_CONTEXT_CONTEXT_H
+#define ZORBA_RUNTIME_CONTEXT_CONTEXT_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * fn:current-dateTime
+ * Author: Zorba Team
+ */
+class CurrentDateTimeIterator : public NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(CurrentDateTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentDateTimeIterator,
+ NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>*)this);
+ }
+
+ CurrentDateTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<CurrentDateTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~CurrentDateTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:current-date
+ * Author: Zorba Team
+ */
+class CurrentDateIterator : public NaryBaseIterator<CurrentDateIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(CurrentDateIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentDateIterator,
+ NaryBaseIterator<CurrentDateIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<CurrentDateIterator, PlanIteratorState>*)this);
+ }
+
+ CurrentDateIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<CurrentDateIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~CurrentDateIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:current-time
+ * Author: Zorba Team
+ */
+class CurrentTimeIterator : public NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(CurrentTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(CurrentTimeIterator,
+ NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>*)this);
+ }
+
+ CurrentTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<CurrentTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~CurrentTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:implicit-timezone
+ * Author: Zorba Team
+ */
+class ImplicitTimezoneIterator : public NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(ImplicitTimezoneIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(ImplicitTimezoneIterator,
+ NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>*)this);
+ }
+
+ ImplicitTimezoneIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<ImplicitTimezoneIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~ImplicitTimezoneIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:default-collation
+ * Author: Zorba Team
+ */
+class DefaultCollationIterator : public NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DefaultCollationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DefaultCollationIterator,
+ NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>*)this);
+ }
+
+ DefaultCollationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DefaultCollationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DefaultCollationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/debug/pregenerated/debug_iterator.cpp'
--- src/runtime/debug/pregenerated/debug_iterator.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/debug/pregenerated/debug_iterator.cpp 2012-05-02 06:48:21 +0000
@@ -1,75 +1,75 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/debug/debug_iterator.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-#ifdef ZORBA_WITH_DEBUGGER
-// <DebugIterator>
-DebugIterator::class_factory<DebugIterator>
-DebugIterator::g_class_factory;
-
-
-void DebugIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DebugIterator::~DebugIterator() {}
-
-DebugIteratorState::DebugIteratorState() {}
-
-DebugIteratorState::~DebugIteratorState() {}
-
-
-void DebugIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- notEmptySequence = false;
-}
-
-void DebugIteratorState::reset(PlanState& planState) {
- PlanIteratorState::reset(planState);
- notEmptySequence = false;
-}
-// </DebugIterator>
-
-#endif
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/debug/debug_iterator.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+#ifdef ZORBA_WITH_DEBUGGER
+// <DebugIterator>
+DebugIterator::class_factory<DebugIterator>
+DebugIterator::g_class_factory;
+
+
+void DebugIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DebugIterator::~DebugIterator() {}
+
+DebugIteratorState::DebugIteratorState() {}
+
+DebugIteratorState::~DebugIteratorState() {}
+
+
+void DebugIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ notEmptySequence = false;
+}
+
+void DebugIteratorState::reset(PlanState& planState) {
+ PlanIteratorState::reset(planState);
+ notEmptySequence = false;
+}
+// </DebugIterator>
+
+#endif
+
+}
+
+
=== modified file 'src/runtime/debug/pregenerated/debug_iterator.h'
--- src/runtime/debug/pregenerated/debug_iterator.h 2012-04-24 12:39:38 +0000
+++ src/runtime/debug/pregenerated/debug_iterator.h 2012-05-02 06:48:21 +0000
@@ -1,135 +1,135 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_DEBUG_DEBUG_ITERATOR_H
-#define ZORBA_RUNTIME_DEBUG_DEBUG_ITERATOR_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-#include <vector>
-#include <map>
-#include <string>
-#include "runtime/util/plan_wrapper_holder.h"
-#include "zorba/options.h"
-#include "store/api/item.h"
-#include "types/typeimpl.h"
-
-
-namespace zorba {
-
-#ifdef ZORBA_WITH_DEBUGGER
-/**
- *
- * This iterator wrapps iterators in which represents breakable expression
- * if the query is compiled in debug mode. It is used to break expressions,
- * interrupt the execution and evaluate expressions while the engine is
- * suspended.
- *
- * Author: Zorba Team
- */
-class DebugIteratorState : public PlanIteratorState
-{
-public:
- bool notEmptySequence; //
-
- DebugIteratorState();
-
- ~DebugIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class DebugIterator : public NaryBaseIterator<DebugIterator, DebugIteratorState>
-{
-protected:
- checked_vector<store::Item_t> varnames; //
- checked_vector<xqtref_t> vartypes; //
- std::vector<DebugIterator*> theDebuggerChildren; //
- DebugIterator* theDebuggerParent; //
- bool theIsVarDeclaration; //
-public:
- SERIALIZABLE_CLASS(DebugIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DebugIterator,
- NaryBaseIterator<DebugIterator, DebugIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DebugIterator, DebugIteratorState>*)this);
-
- ar & varnames;
- ar & vartypes;
- ar & theDebuggerChildren;
- ar & theDebuggerParent;
- ar & theIsVarDeclaration;
- }
-
- DebugIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DebugIterator, DebugIteratorState>(sctx, loc, children),
- varnames(),
- vartypes(),
- theDebuggerChildren(),
- theDebuggerParent(),
- theIsVarDeclaration()
- {}
-
- virtual ~DebugIterator();
-
- bool isVarDeclaration() const { return theIsVarDeclaration; }
-
- void setVarDeclaration(bool aValue) { theIsVarDeclaration= aValue; }
-
-public:
- const DebugIterator* getDebuggerParent() const;
- std::vector<DebugIterator*> getDebuggerChildren() const;
- const DebugIterator* getOverIterator() const;
- QueryLoc getQueryLocation() const;
- std::list<std::pair<zstring, zstring> > eval(PlanState* aState, Zorba_SerializerOptions* aSerOptions) const;
- void checkBreak(PlanState* aState) const;
- void setParent(DebugIterator* aParent);
- void addChild(DebugIterator* aChild);
- void setChildren(std::vector<PlanIter_t>* args);
- void setVariables(checked_vector<store::Item_t> aVarNames, checked_vector<xqtref_t> aVarTypes);
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-#endif
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_DEBUG_DEBUG_ITERATOR_H
+#define ZORBA_RUNTIME_DEBUG_DEBUG_ITERATOR_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+#include <vector>
+#include <map>
+#include <string>
+#include "runtime/util/plan_wrapper_holder.h"
+#include "zorba/options.h"
+#include "store/api/item.h"
+#include "types/typeimpl.h"
+
+
+namespace zorba {
+
+#ifdef ZORBA_WITH_DEBUGGER
+/**
+ *
+ * This iterator wrapps iterators in which represents breakable expression
+ * if the query is compiled in debug mode. It is used to break expressions,
+ * interrupt the execution and evaluate expressions while the engine is
+ * suspended.
+ *
+ * Author: Zorba Team
+ */
+class DebugIteratorState : public PlanIteratorState
+{
+public:
+ bool notEmptySequence; //
+
+ DebugIteratorState();
+
+ ~DebugIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class DebugIterator : public NaryBaseIterator<DebugIterator, DebugIteratorState>
+{
+protected:
+ checked_vector<store::Item_t> varnames; //
+ checked_vector<xqtref_t> vartypes; //
+ std::vector<DebugIterator*> theDebuggerChildren; //
+ DebugIterator* theDebuggerParent; //
+ bool theIsVarDeclaration; //
+public:
+ SERIALIZABLE_CLASS(DebugIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DebugIterator,
+ NaryBaseIterator<DebugIterator, DebugIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DebugIterator, DebugIteratorState>*)this);
+
+ ar & varnames;
+ ar & vartypes;
+ ar & theDebuggerChildren;
+ ar & theDebuggerParent;
+ ar & theIsVarDeclaration;
+ }
+
+ DebugIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DebugIterator, DebugIteratorState>(sctx, loc, children),
+ varnames(),
+ vartypes(),
+ theDebuggerChildren(),
+ theDebuggerParent(),
+ theIsVarDeclaration()
+ {}
+
+ virtual ~DebugIterator();
+
+ bool isVarDeclaration() const { return theIsVarDeclaration; }
+
+ void setVarDeclaration(bool aValue) { theIsVarDeclaration= aValue; }
+
+public:
+ const DebugIterator* getDebuggerParent() const;
+ std::vector<DebugIterator*> getDebuggerChildren() const;
+ const DebugIterator* getOverIterator() const;
+ QueryLoc getQueryLocation() const;
+ std::list<std::pair<zstring, zstring> > eval(PlanState* aState, Zorba_SerializerOptions* aSerOptions) const;
+ void checkBreak(PlanState* aState) const;
+ void setParent(DebugIterator* aParent);
+ void addChild(DebugIterator* aChild);
+ void setChildren(std::vector<PlanIter_t>* args);
+ void setVariables(checked_vector<store::Item_t> aVarNames, checked_vector<xqtref_t> aVarTypes);
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+#endif
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/durations_dates_times/pregenerated/durations_dates_times.cpp'
--- src/runtime/durations_dates_times/pregenerated/durations_dates_times.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/durations_dates_times/pregenerated/durations_dates_times.cpp 2012-05-02 06:48:21 +0000
@@ -1,500 +1,500 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/durations_dates_times/durations_dates_times.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <YearsFromDurationIterator>
-YearsFromDurationIterator::class_factory<YearsFromDurationIterator>
-YearsFromDurationIterator::g_class_factory;
-
-
-void YearsFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-YearsFromDurationIterator::~YearsFromDurationIterator() {}
-
-// </YearsFromDurationIterator>
-
-
-// <MonthsFromDurationIterator>
-MonthsFromDurationIterator::class_factory<MonthsFromDurationIterator>
-MonthsFromDurationIterator::g_class_factory;
-
-
-void MonthsFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MonthsFromDurationIterator::~MonthsFromDurationIterator() {}
-
-// </MonthsFromDurationIterator>
-
-
-// <DaysFromDurationIterator>
-DaysFromDurationIterator::class_factory<DaysFromDurationIterator>
-DaysFromDurationIterator::g_class_factory;
-
-
-void DaysFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DaysFromDurationIterator::~DaysFromDurationIterator() {}
-
-// </DaysFromDurationIterator>
-
-
-// <HoursFromDurationIterator>
-HoursFromDurationIterator::class_factory<HoursFromDurationIterator>
-HoursFromDurationIterator::g_class_factory;
-
-
-void HoursFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-HoursFromDurationIterator::~HoursFromDurationIterator() {}
-
-// </HoursFromDurationIterator>
-
-
-// <MinutesFromDurationIterator>
-MinutesFromDurationIterator::class_factory<MinutesFromDurationIterator>
-MinutesFromDurationIterator::g_class_factory;
-
-
-void MinutesFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MinutesFromDurationIterator::~MinutesFromDurationIterator() {}
-
-// </MinutesFromDurationIterator>
-
-
-// <SecondsFromDurationIterator>
-SecondsFromDurationIterator::class_factory<SecondsFromDurationIterator>
-SecondsFromDurationIterator::g_class_factory;
-
-
-void SecondsFromDurationIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-SecondsFromDurationIterator::~SecondsFromDurationIterator() {}
-
-// </SecondsFromDurationIterator>
-
-
-// <YearFromDatetimeIterator>
-YearFromDatetimeIterator::class_factory<YearFromDatetimeIterator>
-YearFromDatetimeIterator::g_class_factory;
-
-
-void YearFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-YearFromDatetimeIterator::~YearFromDatetimeIterator() {}
-
-// </YearFromDatetimeIterator>
-
-
-// <MonthFromDatetimeIterator>
-MonthFromDatetimeIterator::class_factory<MonthFromDatetimeIterator>
-MonthFromDatetimeIterator::g_class_factory;
-
-
-void MonthFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MonthFromDatetimeIterator::~MonthFromDatetimeIterator() {}
-
-// </MonthFromDatetimeIterator>
-
-
-// <DayFromDatetimeIterator>
-DayFromDatetimeIterator::class_factory<DayFromDatetimeIterator>
-DayFromDatetimeIterator::g_class_factory;
-
-
-void DayFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DayFromDatetimeIterator::~DayFromDatetimeIterator() {}
-
-// </DayFromDatetimeIterator>
-
-
-// <HoursFromDatetimeIterator>
-HoursFromDatetimeIterator::class_factory<HoursFromDatetimeIterator>
-HoursFromDatetimeIterator::g_class_factory;
-
-
-void HoursFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-HoursFromDatetimeIterator::~HoursFromDatetimeIterator() {}
-
-// </HoursFromDatetimeIterator>
-
-
-// <MinutesFromDatetimeIterator>
-MinutesFromDatetimeIterator::class_factory<MinutesFromDatetimeIterator>
-MinutesFromDatetimeIterator::g_class_factory;
-
-
-void MinutesFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MinutesFromDatetimeIterator::~MinutesFromDatetimeIterator() {}
-
-// </MinutesFromDatetimeIterator>
-
-
-// <SecondsFromDatetimeIterator>
-SecondsFromDatetimeIterator::class_factory<SecondsFromDatetimeIterator>
-SecondsFromDatetimeIterator::g_class_factory;
-
-
-void SecondsFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-SecondsFromDatetimeIterator::~SecondsFromDatetimeIterator() {}
-
-// </SecondsFromDatetimeIterator>
-
-
-// <TimezoneFromDatetimeIterator>
-TimezoneFromDatetimeIterator::class_factory<TimezoneFromDatetimeIterator>
-TimezoneFromDatetimeIterator::g_class_factory;
-
-
-void TimezoneFromDatetimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-TimezoneFromDatetimeIterator::~TimezoneFromDatetimeIterator() {}
-
-// </TimezoneFromDatetimeIterator>
-
-
-// <YearFromDateIterator>
-YearFromDateIterator::class_factory<YearFromDateIterator>
-YearFromDateIterator::g_class_factory;
-
-
-void YearFromDateIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-YearFromDateIterator::~YearFromDateIterator() {}
-
-// </YearFromDateIterator>
-
-
-// <MonthFromDateIterator>
-MonthFromDateIterator::class_factory<MonthFromDateIterator>
-MonthFromDateIterator::g_class_factory;
-
-
-void MonthFromDateIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MonthFromDateIterator::~MonthFromDateIterator() {}
-
-// </MonthFromDateIterator>
-
-
-// <DayFromDateIterator>
-DayFromDateIterator::class_factory<DayFromDateIterator>
-DayFromDateIterator::g_class_factory;
-
-
-void DayFromDateIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-DayFromDateIterator::~DayFromDateIterator() {}
-
-// </DayFromDateIterator>
-
-
-// <TimezoneFromDateIterator>
-TimezoneFromDateIterator::class_factory<TimezoneFromDateIterator>
-TimezoneFromDateIterator::g_class_factory;
-
-
-void TimezoneFromDateIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-TimezoneFromDateIterator::~TimezoneFromDateIterator() {}
-
-// </TimezoneFromDateIterator>
-
-
-// <HoursFromTimeIterator>
-HoursFromTimeIterator::class_factory<HoursFromTimeIterator>
-HoursFromTimeIterator::g_class_factory;
-
-
-void HoursFromTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-HoursFromTimeIterator::~HoursFromTimeIterator() {}
-
-// </HoursFromTimeIterator>
-
-
-// <MinutesFromTimeIterator>
-MinutesFromTimeIterator::class_factory<MinutesFromTimeIterator>
-MinutesFromTimeIterator::g_class_factory;
-
-
-void MinutesFromTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-MinutesFromTimeIterator::~MinutesFromTimeIterator() {}
-
-// </MinutesFromTimeIterator>
-
-
-// <SecondsFromTimeIterator>
-SecondsFromTimeIterator::class_factory<SecondsFromTimeIterator>
-SecondsFromTimeIterator::g_class_factory;
-
-
-void SecondsFromTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-SecondsFromTimeIterator::~SecondsFromTimeIterator() {}
-
-// </SecondsFromTimeIterator>
-
-
-// <TimezoneFromTimeIterator>
-TimezoneFromTimeIterator::class_factory<TimezoneFromTimeIterator>
-TimezoneFromTimeIterator::g_class_factory;
-
-
-void TimezoneFromTimeIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-TimezoneFromTimeIterator::~TimezoneFromTimeIterator() {}
-
-// </TimezoneFromTimeIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/durations_dates_times/durations_dates_times.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <YearsFromDurationIterator>
+YearsFromDurationIterator::class_factory<YearsFromDurationIterator>
+YearsFromDurationIterator::g_class_factory;
+
+
+void YearsFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+YearsFromDurationIterator::~YearsFromDurationIterator() {}
+
+// </YearsFromDurationIterator>
+
+
+// <MonthsFromDurationIterator>
+MonthsFromDurationIterator::class_factory<MonthsFromDurationIterator>
+MonthsFromDurationIterator::g_class_factory;
+
+
+void MonthsFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MonthsFromDurationIterator::~MonthsFromDurationIterator() {}
+
+// </MonthsFromDurationIterator>
+
+
+// <DaysFromDurationIterator>
+DaysFromDurationIterator::class_factory<DaysFromDurationIterator>
+DaysFromDurationIterator::g_class_factory;
+
+
+void DaysFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DaysFromDurationIterator::~DaysFromDurationIterator() {}
+
+// </DaysFromDurationIterator>
+
+
+// <HoursFromDurationIterator>
+HoursFromDurationIterator::class_factory<HoursFromDurationIterator>
+HoursFromDurationIterator::g_class_factory;
+
+
+void HoursFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+HoursFromDurationIterator::~HoursFromDurationIterator() {}
+
+// </HoursFromDurationIterator>
+
+
+// <MinutesFromDurationIterator>
+MinutesFromDurationIterator::class_factory<MinutesFromDurationIterator>
+MinutesFromDurationIterator::g_class_factory;
+
+
+void MinutesFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MinutesFromDurationIterator::~MinutesFromDurationIterator() {}
+
+// </MinutesFromDurationIterator>
+
+
+// <SecondsFromDurationIterator>
+SecondsFromDurationIterator::class_factory<SecondsFromDurationIterator>
+SecondsFromDurationIterator::g_class_factory;
+
+
+void SecondsFromDurationIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+SecondsFromDurationIterator::~SecondsFromDurationIterator() {}
+
+// </SecondsFromDurationIterator>
+
+
+// <YearFromDatetimeIterator>
+YearFromDatetimeIterator::class_factory<YearFromDatetimeIterator>
+YearFromDatetimeIterator::g_class_factory;
+
+
+void YearFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+YearFromDatetimeIterator::~YearFromDatetimeIterator() {}
+
+// </YearFromDatetimeIterator>
+
+
+// <MonthFromDatetimeIterator>
+MonthFromDatetimeIterator::class_factory<MonthFromDatetimeIterator>
+MonthFromDatetimeIterator::g_class_factory;
+
+
+void MonthFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MonthFromDatetimeIterator::~MonthFromDatetimeIterator() {}
+
+// </MonthFromDatetimeIterator>
+
+
+// <DayFromDatetimeIterator>
+DayFromDatetimeIterator::class_factory<DayFromDatetimeIterator>
+DayFromDatetimeIterator::g_class_factory;
+
+
+void DayFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DayFromDatetimeIterator::~DayFromDatetimeIterator() {}
+
+// </DayFromDatetimeIterator>
+
+
+// <HoursFromDatetimeIterator>
+HoursFromDatetimeIterator::class_factory<HoursFromDatetimeIterator>
+HoursFromDatetimeIterator::g_class_factory;
+
+
+void HoursFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+HoursFromDatetimeIterator::~HoursFromDatetimeIterator() {}
+
+// </HoursFromDatetimeIterator>
+
+
+// <MinutesFromDatetimeIterator>
+MinutesFromDatetimeIterator::class_factory<MinutesFromDatetimeIterator>
+MinutesFromDatetimeIterator::g_class_factory;
+
+
+void MinutesFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MinutesFromDatetimeIterator::~MinutesFromDatetimeIterator() {}
+
+// </MinutesFromDatetimeIterator>
+
+
+// <SecondsFromDatetimeIterator>
+SecondsFromDatetimeIterator::class_factory<SecondsFromDatetimeIterator>
+SecondsFromDatetimeIterator::g_class_factory;
+
+
+void SecondsFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+SecondsFromDatetimeIterator::~SecondsFromDatetimeIterator() {}
+
+// </SecondsFromDatetimeIterator>
+
+
+// <TimezoneFromDatetimeIterator>
+TimezoneFromDatetimeIterator::class_factory<TimezoneFromDatetimeIterator>
+TimezoneFromDatetimeIterator::g_class_factory;
+
+
+void TimezoneFromDatetimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+TimezoneFromDatetimeIterator::~TimezoneFromDatetimeIterator() {}
+
+// </TimezoneFromDatetimeIterator>
+
+
+// <YearFromDateIterator>
+YearFromDateIterator::class_factory<YearFromDateIterator>
+YearFromDateIterator::g_class_factory;
+
+
+void YearFromDateIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+YearFromDateIterator::~YearFromDateIterator() {}
+
+// </YearFromDateIterator>
+
+
+// <MonthFromDateIterator>
+MonthFromDateIterator::class_factory<MonthFromDateIterator>
+MonthFromDateIterator::g_class_factory;
+
+
+void MonthFromDateIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MonthFromDateIterator::~MonthFromDateIterator() {}
+
+// </MonthFromDateIterator>
+
+
+// <DayFromDateIterator>
+DayFromDateIterator::class_factory<DayFromDateIterator>
+DayFromDateIterator::g_class_factory;
+
+
+void DayFromDateIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+DayFromDateIterator::~DayFromDateIterator() {}
+
+// </DayFromDateIterator>
+
+
+// <TimezoneFromDateIterator>
+TimezoneFromDateIterator::class_factory<TimezoneFromDateIterator>
+TimezoneFromDateIterator::g_class_factory;
+
+
+void TimezoneFromDateIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+TimezoneFromDateIterator::~TimezoneFromDateIterator() {}
+
+// </TimezoneFromDateIterator>
+
+
+// <HoursFromTimeIterator>
+HoursFromTimeIterator::class_factory<HoursFromTimeIterator>
+HoursFromTimeIterator::g_class_factory;
+
+
+void HoursFromTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+HoursFromTimeIterator::~HoursFromTimeIterator() {}
+
+// </HoursFromTimeIterator>
+
+
+// <MinutesFromTimeIterator>
+MinutesFromTimeIterator::class_factory<MinutesFromTimeIterator>
+MinutesFromTimeIterator::g_class_factory;
+
+
+void MinutesFromTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+MinutesFromTimeIterator::~MinutesFromTimeIterator() {}
+
+// </MinutesFromTimeIterator>
+
+
+// <SecondsFromTimeIterator>
+SecondsFromTimeIterator::class_factory<SecondsFromTimeIterator>
+SecondsFromTimeIterator::g_class_factory;
+
+
+void SecondsFromTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+SecondsFromTimeIterator::~SecondsFromTimeIterator() {}
+
+// </SecondsFromTimeIterator>
+
+
+// <TimezoneFromTimeIterator>
+TimezoneFromTimeIterator::class_factory<TimezoneFromTimeIterator>
+TimezoneFromTimeIterator::g_class_factory;
+
+
+void TimezoneFromTimeIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+TimezoneFromTimeIterator::~TimezoneFromTimeIterator() {}
+
+// </TimezoneFromTimeIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/durations_dates_times/pregenerated/durations_dates_times.h'
--- src/runtime/durations_dates_times/pregenerated/durations_dates_times.h 2012-04-24 12:39:38 +0000
+++ src/runtime/durations_dates_times/pregenerated/durations_dates_times.h 2012-05-02 06:48:21 +0000
@@ -1,756 +1,756 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_DURATIONS_DATES_TIMES_DURATIONS_DATES_TIMES_H
-#define ZORBA_RUNTIME_DURATIONS_DATES_TIMES_DURATIONS_DATES_TIMES_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * fn:years-from-duration
- * Author: Zorba Team
- */
-class YearsFromDurationIterator : public NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(YearsFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearsFromDurationIterator,
- NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>*)this);
- }
-
- YearsFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~YearsFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:months-from-duration
- * Author: Zorba Team
- */
-class MonthsFromDurationIterator : public NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MonthsFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthsFromDurationIterator,
- NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>*)this);
- }
-
- MonthsFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MonthsFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:days-from-duration
- * Author: Zorba Team
- */
-class DaysFromDurationIterator : public NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DaysFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DaysFromDurationIterator,
- NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>*)this);
- }
-
- DaysFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DaysFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:hours-from-duration
- * Author: Zorba Team
- */
-class HoursFromDurationIterator : public NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(HoursFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromDurationIterator,
- NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>*)this);
- }
-
- HoursFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~HoursFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:minutes-from-duration
- * Author: Zorba Team
- */
-class MinutesFromDurationIterator : public NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MinutesFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromDurationIterator,
- NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>*)this);
- }
-
- MinutesFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MinutesFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:seconds-from-duration
- * Author: Zorba Team
- */
-class SecondsFromDurationIterator : public NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(SecondsFromDurationIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromDurationIterator,
- NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>*)this);
- }
-
- SecondsFromDurationIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~SecondsFromDurationIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:year-from-dateTime
- * Author: Zorba Team
- */
-class YearFromDatetimeIterator : public NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(YearFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearFromDatetimeIterator,
- NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- YearFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~YearFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:month-from-dateTime
- * Author: Zorba Team
- */
-class MonthFromDatetimeIterator : public NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MonthFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthFromDatetimeIterator,
- NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- MonthFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MonthFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:day-from-dateTime
- * Author: Zorba Team
- */
-class DayFromDatetimeIterator : public NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DayFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DayFromDatetimeIterator,
- NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- DayFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DayFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:hours-from-dateTime
- * Author: Zorba Team
- */
-class HoursFromDatetimeIterator : public NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(HoursFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromDatetimeIterator,
- NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- HoursFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~HoursFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:minutes-from-dateTime
- * Author: Zorba Team
- */
-class MinutesFromDatetimeIterator : public NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MinutesFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromDatetimeIterator,
- NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- MinutesFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MinutesFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:seconds-from-dateTime
- * Author: Zorba Team
- */
-class SecondsFromDatetimeIterator : public NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(SecondsFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromDatetimeIterator,
- NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- SecondsFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~SecondsFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:timezone-from-dateTime
- * Author: Zorba Team
- */
-class TimezoneFromDatetimeIterator : public NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(TimezoneFromDatetimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromDatetimeIterator,
- NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>*)this);
- }
-
- TimezoneFromDatetimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~TimezoneFromDatetimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:year-from-date
- * Author: Zorba Team
- */
-class YearFromDateIterator : public NaryBaseIterator<YearFromDateIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(YearFromDateIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearFromDateIterator,
- NaryBaseIterator<YearFromDateIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<YearFromDateIterator, PlanIteratorState>*)this);
- }
-
- YearFromDateIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<YearFromDateIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~YearFromDateIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:month-from-date
- * Author: Zorba Team
- */
-class MonthFromDateIterator : public NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MonthFromDateIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthFromDateIterator,
- NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>*)this);
- }
-
- MonthFromDateIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MonthFromDateIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:day-from-date
- * Author: Zorba Team
- */
-class DayFromDateIterator : public NaryBaseIterator<DayFromDateIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(DayFromDateIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(DayFromDateIterator,
- NaryBaseIterator<DayFromDateIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<DayFromDateIterator, PlanIteratorState>*)this);
- }
-
- DayFromDateIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<DayFromDateIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~DayFromDateIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:timezone-from-date
- * Author: Zorba Team
- */
-class TimezoneFromDateIterator : public NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(TimezoneFromDateIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromDateIterator,
- NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>*)this);
- }
-
- TimezoneFromDateIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~TimezoneFromDateIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:hours-from-time
- * Author: Zorba Team
- */
-class HoursFromTimeIterator : public NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(HoursFromTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromTimeIterator,
- NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>*)this);
- }
-
- HoursFromTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~HoursFromTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:minutes-from-time
- * Author: Zorba Team
- */
-class MinutesFromTimeIterator : public NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(MinutesFromTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromTimeIterator,
- NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>*)this);
- }
-
- MinutesFromTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~MinutesFromTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:seconds-from-time
- * Author: Zorba Team
- */
-class SecondsFromTimeIterator : public NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(SecondsFromTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromTimeIterator,
- NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>*)this);
- }
-
- SecondsFromTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~SecondsFromTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:timezone-from-time
- * Author: Zorba Team
- */
-class TimezoneFromTimeIterator : public NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(TimezoneFromTimeIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromTimeIterator,
- NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>*)this);
- }
-
- TimezoneFromTimeIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~TimezoneFromTimeIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+#ifndef ZORBA_RUNTIME_DURATIONS_DATES_TIMES_DURATIONS_DATES_TIMES_H
+#define ZORBA_RUNTIME_DURATIONS_DATES_TIMES_DURATIONS_DATES_TIMES_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ * fn:years-from-duration
+ * Author: Zorba Team
+ */
+class YearsFromDurationIterator : public NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(YearsFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearsFromDurationIterator,
+ NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ YearsFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<YearsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~YearsFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:months-from-duration
+ * Author: Zorba Team
+ */
+class MonthsFromDurationIterator : public NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MonthsFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthsFromDurationIterator,
+ NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ MonthsFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MonthsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MonthsFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:days-from-duration
+ * Author: Zorba Team
+ */
+class DaysFromDurationIterator : public NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DaysFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DaysFromDurationIterator,
+ NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ DaysFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DaysFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DaysFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:hours-from-duration
+ * Author: Zorba Team
+ */
+class HoursFromDurationIterator : public NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(HoursFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromDurationIterator,
+ NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ HoursFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<HoursFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~HoursFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:minutes-from-duration
+ * Author: Zorba Team
+ */
+class MinutesFromDurationIterator : public NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MinutesFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromDurationIterator,
+ NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ MinutesFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MinutesFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MinutesFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:seconds-from-duration
+ * Author: Zorba Team
+ */
+class SecondsFromDurationIterator : public NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(SecondsFromDurationIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromDurationIterator,
+ NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>*)this);
+ }
+
+ SecondsFromDurationIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<SecondsFromDurationIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~SecondsFromDurationIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:year-from-dateTime
+ * Author: Zorba Team
+ */
+class YearFromDatetimeIterator : public NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(YearFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearFromDatetimeIterator,
+ NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ YearFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<YearFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~YearFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:month-from-dateTime
+ * Author: Zorba Team
+ */
+class MonthFromDatetimeIterator : public NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MonthFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthFromDatetimeIterator,
+ NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ MonthFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MonthFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MonthFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:day-from-dateTime
+ * Author: Zorba Team
+ */
+class DayFromDatetimeIterator : public NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DayFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DayFromDatetimeIterator,
+ NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ DayFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DayFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DayFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:hours-from-dateTime
+ * Author: Zorba Team
+ */
+class HoursFromDatetimeIterator : public NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(HoursFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromDatetimeIterator,
+ NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ HoursFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<HoursFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~HoursFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:minutes-from-dateTime
+ * Author: Zorba Team
+ */
+class MinutesFromDatetimeIterator : public NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MinutesFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromDatetimeIterator,
+ NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ MinutesFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MinutesFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MinutesFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:seconds-from-dateTime
+ * Author: Zorba Team
+ */
+class SecondsFromDatetimeIterator : public NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(SecondsFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromDatetimeIterator,
+ NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ SecondsFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<SecondsFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~SecondsFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:timezone-from-dateTime
+ * Author: Zorba Team
+ */
+class TimezoneFromDatetimeIterator : public NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(TimezoneFromDatetimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromDatetimeIterator,
+ NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>*)this);
+ }
+
+ TimezoneFromDatetimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<TimezoneFromDatetimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~TimezoneFromDatetimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:year-from-date
+ * Author: Zorba Team
+ */
+class YearFromDateIterator : public NaryBaseIterator<YearFromDateIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(YearFromDateIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(YearFromDateIterator,
+ NaryBaseIterator<YearFromDateIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<YearFromDateIterator, PlanIteratorState>*)this);
+ }
+
+ YearFromDateIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<YearFromDateIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~YearFromDateIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:month-from-date
+ * Author: Zorba Team
+ */
+class MonthFromDateIterator : public NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MonthFromDateIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MonthFromDateIterator,
+ NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>*)this);
+ }
+
+ MonthFromDateIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MonthFromDateIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MonthFromDateIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:day-from-date
+ * Author: Zorba Team
+ */
+class DayFromDateIterator : public NaryBaseIterator<DayFromDateIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(DayFromDateIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(DayFromDateIterator,
+ NaryBaseIterator<DayFromDateIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<DayFromDateIterator, PlanIteratorState>*)this);
+ }
+
+ DayFromDateIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<DayFromDateIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~DayFromDateIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:timezone-from-date
+ * Author: Zorba Team
+ */
+class TimezoneFromDateIterator : public NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(TimezoneFromDateIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromDateIterator,
+ NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>*)this);
+ }
+
+ TimezoneFromDateIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<TimezoneFromDateIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~TimezoneFromDateIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:hours-from-time
+ * Author: Zorba Team
+ */
+class HoursFromTimeIterator : public NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(HoursFromTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(HoursFromTimeIterator,
+ NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>*)this);
+ }
+
+ HoursFromTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<HoursFromTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~HoursFromTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:minutes-from-time
+ * Author: Zorba Team
+ */
+class MinutesFromTimeIterator : public NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(MinutesFromTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(MinutesFromTimeIterator,
+ NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>*)this);
+ }
+
+ MinutesFromTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<MinutesFromTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~MinutesFromTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:seconds-from-time
+ * Author: Zorba Team
+ */
+class SecondsFromTimeIterator : public NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(SecondsFromTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(SecondsFromTimeIterator,
+ NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>*)this);
+ }
+
+ SecondsFromTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<SecondsFromTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~SecondsFromTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ * fn:timezone-from-time
+ * Author: Zorba Team
+ */
+class TimezoneFromTimeIterator : public NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(TimezoneFromTimeIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(TimezoneFromTimeIterator,
+ NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>*)this);
+ }
+
+ TimezoneFromTimeIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<TimezoneFromTimeIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~TimezoneFromTimeIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== modified file 'src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.cpp'
--- src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.cpp 2012-04-24 12:39:38 +0000
+++ src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.cpp 2012-05-02 06:48:21 +0000
@@ -1,100 +1,100 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-
-#include "stdafx.h"
-#include "zorbatypes/rchandle.h"
-#include "zorbatypes/zstring.h"
-#include "runtime/visitors/planiter_visitor.h"
-#include "runtime/errors_and_diagnostics/errors_and_diagnostics.h"
-#include "system/globalenv.h"
-
-
-
-namespace zorba {
-
-// <ErrorIterator>
-ErrorIterator::class_factory<ErrorIterator>
-ErrorIterator::g_class_factory;
-
-
-void ErrorIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-ErrorIterator::~ErrorIterator() {}
-
-// </ErrorIterator>
-
-
-// <TraceIterator>
-TraceIterator::class_factory<TraceIterator>
-TraceIterator::g_class_factory;
-
-
-void TraceIterator::accept(PlanIterVisitor& v) const {
- v.beginVisit(*this);
-
- std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
- std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
- for ( ; lIter != lEnd; ++lIter ){
- (*lIter)->accept(v);
- }
-
- v.endVisit(*this);
-}
-
-TraceIterator::~TraceIterator() {}
-
-TraceIteratorState::TraceIteratorState() {}
-
-TraceIteratorState::~TraceIteratorState() {}
-
-
-void TraceIteratorState::init(PlanState& planState) {
- PlanIteratorState::init(planState);
- theTagItem = NULL;
- theIndex = 0;
- theOS = 0;
-}
-
-void TraceIteratorState::reset(PlanState& planState) {
- PlanIteratorState::reset(planState);
- theTagItem = NULL;
- theIndex = 0;
- theOS = 0;
-}
-// </TraceIterator>
-
-
-
-}
-
-
+/*
+ * Copyright 2006-2008 The FLWOR Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// ******************************************
+// * *
+// * THIS IS A GENERATED FILE. DO NOT EDIT! *
+// * SEE .xml FILE WITH SAME NAME *
+// * *
+// ******************************************
+
+#include "stdafx.h"
+#include "zorbatypes/rchandle.h"
+#include "zorbatypes/zstring.h"
+#include "runtime/visitors/planiter_visitor.h"
+#include "runtime/errors_and_diagnostics/errors_and_diagnostics.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <ErrorIterator>
+ErrorIterator::class_factory<ErrorIterator>
+ErrorIterator::g_class_factory;
+
+
+void ErrorIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+ErrorIterator::~ErrorIterator() {}
+
+// </ErrorIterator>
+
+
+// <TraceIterator>
+TraceIterator::class_factory<TraceIterator>
+TraceIterator::g_class_factory;
+
+
+void TraceIterator::accept(PlanIterVisitor& v) const {
+ v.beginVisit(*this);
+
+ std::vector<PlanIter_t>::const_iterator lIter = theChildren.begin();
+ std::vector<PlanIter_t>::const_iterator lEnd = theChildren.end();
+ for ( ; lIter != lEnd; ++lIter ){
+ (*lIter)->accept(v);
+ }
+
+ v.endVisit(*this);
+}
+
+TraceIterator::~TraceIterator() {}
+
+TraceIteratorState::TraceIteratorState() {}
+
+TraceIteratorState::~TraceIteratorState() {}
+
+
+void TraceIteratorState::init(PlanState& planState) {
+ PlanIteratorState::init(planState);
+ theTagItem = NULL;
+ theIndex = 0;
+ theOS = 0;
+}
+
+void TraceIteratorState::reset(PlanState& planState) {
+ PlanIteratorState::reset(planState);
+ theTagItem = NULL;
+ theIndex = 0;
+ theOS = 0;
+}
+// </TraceIterator>
+
+
+
+}
+
+
=== modified file 'src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.h'
--- src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.h 2012-04-24 12:39:38 +0000
+++ src/runtime/errors_and_diagnostics/pregenerated/errors_and_diagnostics.h 2012-05-02 06:48:21 +0000
@@ -1,125 +1,125 @@
-/*
- * Copyright 2006-2008 The FLWOR Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// ******************************************
-// * *
-// * THIS IS A GENERATED FILE. DO NOT EDIT! *
-// * SEE .xml FILE WITH SAME NAME *
-// * *
-// ******************************************
-#ifndef ZORBA_RUNTIME_ERRORS_AND_DIAGNOSTICS_ERRORS_AND_DIAGNOSTICS_H
-#define ZORBA_RUNTIME_ERRORS_AND_DIAGNOSTICS_ERRORS_AND_DIAGNOSTICS_H
-
-
-#include "common/shared_types.h"
-
-
-
-#include "runtime/base/narybase.h"
-
-
-namespace zorba {
-
-/**
- * fn:error
- * Author: Zorba Team
- */
-class ErrorIterator : public NaryBaseIterator<ErrorIterator, PlanIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(ErrorIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(ErrorIterator,
- NaryBaseIterator<ErrorIterator, PlanIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<ErrorIterator, PlanIteratorState>*)this);
- }
-
- ErrorIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<ErrorIterator, PlanIteratorState>(sctx, loc, children)
- {}
-
- virtual ~ErrorIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-/**
- * fn:trace
- * Author: Zorba Team
- */
-class TraceIteratorState : public PlanIteratorState
-{
-public:
- store::Item_t theTagItem; //
- uint32_t theIndex; //
- std::ostream* theOS; //
-
- TraceIteratorState();
-
- ~TraceIteratorState();
-
- void init(PlanState&);
- void reset(PlanState&);
-};
-
-class TraceIterator : public NaryBaseIterator<TraceIterator, TraceIteratorState>
-{
-public:
- SERIALIZABLE_CLASS(TraceIterator);
-
- SERIALIZABLE_CLASS_CONSTRUCTOR2T(TraceIterator,
- NaryBaseIterator<TraceIterator, TraceIteratorState>);
-
- void serialize( ::zorba::serialization::Archiver& ar)
- {
- serialize_baseclass(ar,
- (NaryBaseIterator<TraceIterator, TraceIteratorState>*)this);
- }
-
- TraceIterator(
- static_context* sctx,
- const QueryLoc& loc,
- std::vector<PlanIter_t>& children)
- :
- NaryBaseIterator<TraceIterator, TraceIteratorState>(sctx, loc, children)
- {}
-
- virtual ~TraceIterator();
-
- void accept(PlanIterVisitor& v) const;
-
- bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
-};
-
-
-}
-#endif
-/*
- * Local variables:
- * mode: c++
- * End:
- */
+/*
+ * Copy
Follow ups