[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
The proposal to merge lp:~zorba-coders/zorba/bug-1058398 into lp:zorba has been updated. Status: Approved => Merged For more details, see: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Validation queue succeeded - proposal merged! -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Validation queue starting for the following merge proposals: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Progress dashboard at http://jenkins.lambda.nu/view/ValidationQueue -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Review: Approve -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
The proposal to merge lp:~zorba-coders/zorba/bug-1058398 into lp:zorba has been updated. Commit Message changed to: Added core C++ implementation of functx functions having the same name. For more details, see: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
The proposal to merge lp:~zorba-coders/zorba/bug-1058398 into lp:zorba has been updated. Description changed to: Added core C++ implementation of functx functions having the same name. For more details, see: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Review: Approve -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
The proposal to merge lp:~zorba-coders/zorba/bug-1058398 into lp:zorba has been updated. Status: Needs review => Approved For more details, see: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Why did you create a MP for this? As you saw from my e-mail, the performance isn't significantly better as-is. That said, it might be possible to improve it by, for instance, caching the casting results; but that would take more investigation. -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Review: Needs Fixing documentation in "Performs TODO" -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
[Zorba-coders] [Merge] lp:~zorba-coders/zorba/bug-1058398 into lp:zorba
Matthias Brantner has proposed merging lp:~zorba-coders/zorba/bug-1058398 into lp:zorba. Commit message: Bug #1058398: set-based sequence operations Requested reviews: Matthias Brantner (matthias-brantner) Related bugs: Bug #1058398 in Zorba: "set-based sequence operations" https://bugs.launchpad.net/zorba/+bug/1058398 For more details, see: https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 -- https://code.launchpad.net/~zorba-coders/zorba/bug-1058398/+merge/187965 Your team Zorba Coders is subscribed to branch lp:zorba. === modified file 'ChangeLog' --- ChangeLog 2013-09-22 17:52:24 + +++ ChangeLog 2013-09-27 03:33:21 + @@ -54,6 +54,7 @@ * Fixed bug #1190261 (relative paths bug in file module) * Fixed bug #1189798 (Update core module "errors") * Fixed bug #1187537 (Eliminate (or at least reduce) use of MAX_PATH) + * Fixed bug #1058398 (set-based sequence operations) * Fixed bug #1180220 (Consolidate redundant path/file public APIs) * Fixed bug #1158052 (createBase64Binary() API too subtle) * Fixed bug #1103115 (Timezone units as hours are wrong) === modified file 'modules/CMakeLists.txt' --- modules/CMakeLists.txt 2013-09-09 23:47:17 + +++ modules/CMakeLists.txt 2013-09-27 03:33:21 + @@ -13,18 +13,19 @@ # limitations under the License. ADD_SUBDIRECTORY(atomic) -ADD_SUBDIRECTORY(store) ADD_SUBDIRECTORY(com) -ADD_SUBDIRECTORY(org) +ADD_SUBDIRECTORY(full-text) ADD_SUBDIRECTORY(functx) -ADD_SUBDIRECTORY(zorba-query) -ADD_SUBDIRECTORY(w3c) -ADD_SUBDIRECTORY(full-text) -ADD_SUBDIRECTORY(xml) ADD_SUBDIRECTORY(http-client) +ADD_SUBDIRECTORY(item) ADD_SUBDIRECTORY(json) +ADD_SUBDIRECTORY(org) +ADD_SUBDIRECTORY(sequence) +ADD_SUBDIRECTORY(store) ADD_SUBDIRECTORY(structured-items) -ADD_SUBDIRECTORY(item) +ADD_SUBDIRECTORY(w3c) +ADD_SUBDIRECTORY(xml) +ADD_SUBDIRECTORY(zorba-query) # Add external module projects - any subdirectories of a directory === added directory 'modules/sequence' === added file 'modules/sequence/CMakeLists.txt' --- modules/sequence/CMakeLists.txt 1970-01-01 00:00:00 + +++ modules/sequence/CMakeLists.txt 2013-09-27 03:33:21 + @@ -0,0 +1,18 @@ +# Copyright 2013 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. + +DECLARE_ZORBA_MODULE(FILE sequence.xq VERSION 1.0 + URI "http://zorba.io/modules/sequence";) + +# vim:set et sw=2 ts=2: === added file 'modules/sequence/sequence.xq' --- modules/sequence/sequence.xq 1970-01-01 00:00:00 + +++ modules/sequence/sequence.xq 2013-09-27 03:33:21 + @@ -0,0 +1,73 @@ +xquery version "3.0"; + +(: + : Copyright 2006-2013 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 module provides an XQuery API to perform set operations on sequences. + : + : @author Paul J. Lucas + : @project Zorba/Sequence + :) + +module namespace seq = "http://zorba.io/modules/sequence";; + +declare namespace ver = "http://zorba.io/options/versioning";; +declare option ver:module-version "1.0"; + +(:===:) + +(:~ + : Performs an intersection of two sequences. + : + : @param $seq1 The first sequence. + : @param $seq2 The second sequence. + : @return a sequence only containing items from $seq1 that are + : also in $seq2 + :) +declare function seq:set-intersect( $seq1 as xs:anyAtomicType*, +$seq2 as xs:anyAtomicType* ) + as xs:anyAtomicType* external; + +(:~ + : Performs a union of two sequences. + : + : @param $seq1 The first sequence. + : @param $seq2 The second sequence. + : @return a sequence containing all items from $seq1 + : and seq2$ but without duplicates. + :) +declare function seq:set-union( $seq1 as xs:anyAtomicType*, +$seq2 as xs:anyAtomicType* ) + as xs:anyAtomicType* external; + +(:~ + : Perfo