zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #03468
[Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
Matthias Brantner has proposed merging lp:~zorba-coders/zorba/fn_envvars into lp:zorba.
Requested reviews:
Zorba Coders (zorba-coders)
For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/fn_envvars/+merge/88143
--
https://code.launchpad.net/~zorba-coders/zorba/fn_envvars/+merge/88143
Your team Zorba Coders is requested to review the proposed merge of lp:~zorba-coders/zorba/fn_envvars into lp:zorba.
=== removed file 'NOTICE.txt'
--- NOTICE.txt 2011-10-21 08:09:17 +0000
+++ NOTICE.txt 1970-01-01 00:00:00 +0000
@@ -1,740 +0,0 @@
------------
-Zorba 2.1.0
------------
-
-(Note: This file is generated automatically from NOTICE.xml.
-Please do not modify this file directly.)
-
-
-
-
-Apache 2
-
- Copyright 2006-2011 The FLWOR Foundation
-
- See LICENSE.txt for license information.
-
- ------------------------
- This product includes software developed at
- The FLWOR Foundation (http://www.flworfound.org/).
-
- ------------------------
- Portions of this software were developed at the Systems
- Group of the ETH Zurich, Switzerland.
-
-
-Other files used by this project:
-----------------------------------------------------
-
-src/zorbatypes/m_apm.h
-src/zorbatypes/mapm/
-
-Copyright: 1999-2007 Michael C. Ring
-Website: http://www.tc.umn.edu/~ringx004/mapm-main.html
-
- This software is Freeware.
-
- Permission to use, copy, and distribute this software and its
- documentation for any purpose with or without fee is hereby granted,
- provided that the above copyright notice appear in all copies and
- that both that copyright notice and this permission notice appear
- in supporting documentation.
-
- Permission to modify the software is granted. Permission to distribute
- the modified code is granted. Modifications are to be distributed by
- using the file 'license.txt' as a template to modify the file header.
- 'license.txt' is available in the official MAPM distribution.
-
- To distribute modified source code, insert the file 'license.txt'
- at the top of all modified source code files and edit accordingly.
-
- This software is provided "as is" without express or implied warranty.
-
-----------------------------------------------------
-
-src/zorbamisc/config/stdint.h
-
-Copyright: 2006 Alexander Chemeris
-
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- 3. The name of the author may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-----------------------------------------------------
-
-src/zorbautils/stemmer/
-
-Copyright: 2001 Dr. Martin Porter
-
-
- All the software given out on this Snowball site is covered by the BSD
- License (see http://www.opensource.org/licenses/bsd-license.html), with
- Copyright (c) 2001, Dr Martin Porter, and (for the Java developments)
- Copyright (c) 2002, Richard Boulton.
-
- Essentially, all this means is that you can do what you like with the code,
- except claim another Copyright for it, or claim that it is issued under a
- different license. The software is also issued without warranties, which
- means that if anyone suffers through its use, they cannot come back and sue
- you. You also have to alert anyone to whom you give the Snowball software to
- the fact that it is covered by the BSD license.
-
- We have not bothered to insert the licensing arrangement into the text of
- the Snowball software.
-
-----------------------------------------------------
-
-src/util/less.h
-
-Copyright: 1998 Paul J. Lucas
-
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- o Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- o Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- o The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
-
-----------------------------------------------------
-
-src/util/auto_vector.h (has been modified)
-
-Copyright: 2003 Reliable Software
-
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are met:
-
- o Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
- o Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- o The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
-
-----------------------------------------------------
-
-cmake_modules/FindBoost.cmake
-
-Copyright:
- 2006-2008 Andreas Schneider <mail@xxxxxxxxxxxx>
- 2007 Wengo
- 2007 Mike Jackson
- 2008 Andreas Pakulat <apaku@xxxxxx>
-
-
-
- Redistribution AND use is allowed according to the terms of the New BSD license.
- For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-----------------------------------------------------
-
-cmake_modules/FindJNI.cmake
-cmake_modules/FindPythonLibs.cmake
-cmake_modules/FindSWIG.cmake
-
-Copyright: 2001-2009 Kitware, Inc.
-
-
- Distributed under the OSI-approved BSD License (the "License");
- see accompanying file Copyright.txt for details.
-
- This software is distributed WITHOUT ANY WARRANTY; without even the
- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- See the License for more information.
-
- CMake - Cross Platform Makefile Generator
- Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
- All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- * Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- * Neither the names of Kitware, Inc., the Insight Software Consortium,
- nor the names of their contributors may be used to endorse or promote
- products derived from this software without specific prior written
- permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- ------------------------------------------------------------------------------
-
- The above copyright and license notice applies to distributions of
- CMake in source and binary form. Some source files contain additional
- notices of original copyright by their contributors; see each source
- for details. Third-party software packages supplied with CMake under
- compatible licenses provide their own copyright notices documented in
- corresponding subdirectories.
-
- ------------------------------------------------------------------------------
-
- CMake was initially developed by Kitware with the following sponsorship:
-
- * National Library of Medicine at the National Institutes of Health
- as part of the Insight Segmentation and Registration Toolkit (ITK).
-
- * US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel
- Visualization Initiative.
-
- * National Alliance for Medical Image Computing (NAMIC) is funded by the
- National Institutes of Health through the NIH Roadmap for Medical Research,
- Grant U54 EB005149.
-
- * Kitware, Inc.
-
-----------------------------------------------------
-
-/xml.xsd
-
-Copyright: 2001 World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University)
-
-
- All Rights Reserved. This work is distributed under the W3C Software License [1] in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- W3C Software Notice and License
-
- This work (and included software, documentation such as READMEs, or other related items) is being provided by the copyright holders under the following license.
-
- License
-
- By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
-
- Permission to copy, modify, and distribute this software and its documentation, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including modifications:
- •The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
- •Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software Short Notice should be included (hypertext is preferred, text is permitted) within the body of any redistributed or derivative code.
- •Notice of any changes or modifications to the files, including the date changes were made. (We recommend you provide URIs to the location from which the code is derived.)
-
- Disclaimers
-
- THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
- COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
-
- The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
-
-----------------------------------------------------
-
-schemas/xslt-xquery-serialization.xsd
-
-Copyright: 2010 World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University)
-
-
- All Rights Reserved. This work is distributed under the W3C Software License [1] in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- W3C Software Notice and License
-
- This work (and included software, documentation such as READMEs, or other related items) is being provided by the copyright holders under the following license.
-
- License
-
- By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
-
- Permission to copy, modify, and distribute this software and its documentation, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including modifications:
- •The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
- •Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software Short Notice should be included (hypertext is preferred, text is permitted) within the body of any redistributed or derivative code.
- •Notice of any changes or modifications to the files, including the date changes were made. (We recommend you provide URIs to the location from which the code is derived.)
-
- Disclaimers
-
- THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
- COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
-
- The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
-
-----------------------------------------------------
-
-modules/w3c/xpath-functions.xsd
-
-Copyright: 2005 World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University)
-
-
- All Rights Reserved. This work is distributed under the W3C Software License [1] in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- W3C Software Notice and License
-
- This work (and included software, documentation such as READMEs, or other related items) is being provided by the copyright holders under the following license.
-
- License
-
- By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
-
- Permission to copy, modify, and distribute this software and its documentation, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including modifications:
- •The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
- •Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software Short Notice should be included (hypertext is preferred, text is permitted) within the body of any redistributed or derivative code.
- •Notice of any changes or modifications to the files, including the date changes were made. (We recommend you provide URIs to the location from which the code is derived.)
-
- Disclaimers
-
- THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
- COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
-
- The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
-
-----------------------------------------------------
-
-include/xqc.h
-
-Copyright: 2008, Matthias Brantner, John Snelson
-
-
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the developers nor the names of contributors may be
- * used to endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
-
-----------------------------------------------------
-
-modules/functx/functx.xq
-
-Copyright: 2007 Datypic
-
-
- : This library is free software; you can redistribute it and/or
- : modify it under the terms of the GNU Lesser General Public
- : License as published by the Free Software Foundation; either
- : version 2.1 of the License.
-
- : This library is distributed in the hope that it will be useful,
- : but WITHOUT ANY WARRANTY; without even the implied warranty of
- : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- : Lesser General Public License for more details.
-
- : You should have received a copy of the GNU Lesser General Public
- : License along with this library; if not, write to the Free Software
- : Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-----------------------------------------------------
-
-src/compiler/parser/FlexLexer.h
-
-Copyright: 1993 The Regents of the University of California
-
-
- // All rights reserved.
- //
- // This code is derived from software contributed to Berkeley by
- // Kent Williams and Tom Epperly.
- //
- // Redistribution and use in source and binary forms, with or without
- // modification, are permitted provided that the following conditions
- // are met:
-
- // 1. Redistributions of source code must retain the above copyright
- // notice, this list of conditions and the following disclaimer.
- // 2. Redistributions in binary form must reproduce the above copyright
- // notice, this list of conditions and the following disclaimer in the
- // documentation and/or other materials provided with the distribution.
-
- // Neither the name of the University nor the names of its contributors
- // may be used to endorse or promote products derived from this software
- // without specific prior written permission.
-
- // THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- // IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- // PURPOSE.
-
-----------------------------------------------------
-
-src/diagnostics/StackWalker.cpp
-src/diagnostics/StackWalker.h
-
-Copyright: 2005 Jochen Kalmbach
-
-
- Under BSD License: http://www.opensource.org/licenses/bsd-license.php
-
-----------------------------------------------------
-
-src/util/singleton.h
-src/util/threads.h
-
-Copyright: 2001 Andrei Alexandrescu
-
-
- This code accompanies the book:
- Alexandrescu, Andrei. "Modern C++ Design: Generic Programming and Design
- Patterns Applied". Copyright (c) 2001. Addison-Wesley.
- Permission to use, copy, modify, distribute and sell this software for any
- purpose is hereby granted without fee, provided that the above copyright
- notice appear in all copies and that both that copyright notice and this
- permission notice appear in supporting documentation.
- The author or Addison-Wesley Longman make no representations about the
- suitability of this software for any purpose. It is provided "as is"
- without express or implied warranty.
-
-
-External libraries used by this project:
-----------------------------------------------------
-
-Name: LIBXML2
-Preferred version: 2.2.16 or higher
-Is mandatory: true
-Website: http://xmlsoft.org/
-License: MIT
-Copyright: 1998-2002 Daniel Veillard. All Rights Reserved.
-External notice:
-
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- Except as contained in this notice, the name of Daniel Veillard shall not
- be used in advertising or otherwise to promote the sale, use or other deal-
- ings in this Software without prior written authorization from him.
-
-----------------------------------------------------
-
-Name: LIBXSLT
-Preferred version: 1.1.26
-Is mandatory: false
-Website: http://xmlsoft.org/XSLT/
-License: MIT
-Copyright: 2001-2002 Daniel Veillard. All Rights Reserved.
-External notice:
-
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL DANIEL VEILLARD BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
- Except as contained in this notice, the name of Daniel Veillard shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from him.
-
-
-----------------------------------------------------
-
-Name: ICU4C
-Preferred version: 3.6 or higher
-Is mandatory: true
-Website: http://www.icu-project.org/
-License: ICU License
-Copyright: 1995-2011 International Business Machines Corporation and others
-External notice:
-
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
- Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder.
-
-----------------------------------------------------
-
-Name: CURL
-Preferred version: above 7.12
-Is mandatory: false
-Website: http://curl.haxx.se/
-License: MIT/X derivate license
-Copyright: 1996 - 2011, Daniel Stenberg, <daniel@xxxxxxx>.
-External notice:
-
- All rights reserved.
-
- Permission to use, copy, modify, and distribute this software for any purpose
- with or without fee is hereby granted, provided that the above copyright
- notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
- NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
- OR OTHER DEALINGS IN THE SOFTWARE.
-
- Except as contained in this notice, the name of a copyright holder shall not
- be used in advertising or otherwise to promote the sale, use or other dealings
- in this Software without prior written authorization of the copyright holder.
-
-----------------------------------------------------
-
-Name: ICONV
-Preferred version: above 1.12
-Is mandatory: true
-Website: http://www.gnu.org/software/libiconv/
-License: LGPL
-Copyright: 1998, 2010 Free Software Foundation, Inc.
-External notice:
-
-----------------------------------------------------
-
-Name: ZLIB
-Preferred version: 1.2.5
-Is mandatory: true
-Website: http://www.zlib.net/
-Copyright: 1995-2004 Jean-loup Gailly and Mark Adler
-External notice:
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event will the authors be held liable for any damages
- arising from the use of this software.
-
- Permission is granted to anyone to use this software for any purpose,
- including commercial applications, and to alter it and redistribute it
- freely, subject to the following restrictions:
-
- 1. The origin of this software must not be misrepresented; you must not
- claim that you wrote the original software. If you use this software
- in a product, an acknowledgment in the product documentation would be
- appreciated but is not required.
- 2. Altered source versions must be plainly marked as such, and must not be
- misrepresented as being the original software.
- 3. This notice may not be removed or altered from any source distribution.
-
- Jean-loup Gailly jloup@xxxxxxxx
- Mark Adler madler@xxxxxxxxxxxxxxxxxx
-
-----------------------------------------------------
-
-Name: XERCES
-Preferred version: 2.8.0 or higher
-Is mandatory: true
-Website: http://xerces.apache.org/xerces-c/
-License: Apache 2
-Copyright: Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.
-External notice:
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-----------------------------------------------------
-
-Name: BOOST (boost_filesystem)
-Preferred version: 1.32 or higher
-Is mandatory: false
-Website: http://www.boost.org/
-License: Boost Software License v1.0
-Copyright:
- Beman Dawes, David Abrahams, 1998-2005.
- Rene Rivera 2004-2007
-
-External notice:
-
- Permission is hereby granted, free of charge, to any person or organization
- obtaining a copy of the software and accompanying documentation covered by
- this license (the "Software") to use, reproduce, display, distribute,
- execute, and transmit the Software, and to prepare derivative works of the
- Software, and to permit third-parties to whom the Software is furnished to
- do so, all subject to the following:
-
- The copyright notices in the Software and this entire statement, including
- the above license grant, this restriction and the following disclaimer,
- must be included in all copies of the Software, in whole or in part, and
- all derivative works of the Software, unless such copies or derivative
- works are solely in the form of machine-executable object code generated by
- a source language processor.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
- SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
- FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- DEALINGS IN THE SOFTWARE.
-
-
-External applications used by this project:
-----------------------------------------------------
-
-Name: FLEX
-Preferred version: 2.5.33
-Is mandatory: false
-Website: http://flex.sourceforge.net/
-Copyright:
- 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The Flex Project.
- 1990, 1997 The Regents of the University of California. All rights reserved.
-
-External notice:
-
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
- 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-
- Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED “AS IS” AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-----------------------------------------------------
-
-Name: BISON
-Preferred version: 2.4 or higher
-Is mandatory: false
-Website: http://www.gnu.org/software/bison/
-License: GPL
-Copyright: 1998, 2001, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-External notice:
-
-----------------------------------------------------
-
-Name: DOXYGEN
-Preferred version: v1.7.4
-Is mandatory: false
-Website: www.doxygen.org
-License: GPL
-Copyright: 1997-2011 by Dimitri van Heesch
-External notice:
-
- Permission to use, copy, modify, and distribute this software and its documentation under the terms of the GNU General Public License is hereby granted.
- No representations are made about the suitability of this software for any purpose.
- It is provided "as is" without express or implied warranty.
- See the GNU General Public License for more details.
-
- Documents produced by doxygen are derivative works derived from the input used in their production; they are not affected by this license.
-
-----------------------------------------------------
-
-Name: CMAKE
-Preferred version: 2.8.4
-Is mandatory: true
-Website: http://www.cmake.org/
-License: Creative Commons Attribution-NoDerivs 3.0 Unported License
-Copyright: 2000-2009 Kitware, Inc., Insight Software Consortium. All rights reserved.
-External notice:
-
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-
- Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-----------------------------------------------------
-
-Name: SWIG
-Preferred version: 2.0.4 or above
-Is mandatory: false
-Website: http://www.swig.org/
-License: GPL
-Copyright:
- 1995-2011 The SWIG Developers
- 2005-2006 Arizona Board of Regents (University of Arizona).
- 1998-2005 University of Chicago.
- 1995-1998 The University of Utah and the Regents of the University of California
-
-External notice:
-
- SWIG is free software: you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version. See the LICENSE-GPL file for
- the full terms of the GNU General Public license version 3.
-
- Portions of SWIG are also licensed under the terms of the licenses
- in the file LICENSE-UNIVERSITIES. You must observe the terms of
- these licenses, as well as the terms of the GNU General Public License,
- when you distribute SWIG.
-
- The SWIG library and examples, under the Lib and Examples top level
- directories, are distributed under the following terms:
-
- You may copy, modify, distribute, and make derivative works based on
- this software, in source code or object code form, without
- restriction. If you distribute the software to others, you may do
- so according to the terms of your choice. This software is offered as
- is, without warranty of any kind.
-
- See the COPYRIGHT file for a list of contributors to SWIG and their
- copyright notices.
-
\ No newline at end of file
=== modified file 'modules/w3c/xpath_functions.xq'
--- modules/w3c/xpath_functions.xq 2011-10-07 08:28:43 +0000
+++ modules/w3c/xpath_functions.xq 2012-01-10 23:57:31 +0000
@@ -994,4 +994,14 @@
(:~
: @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-string">fn:string</a>
:)
-declare function fn:string($arg as item()?) as xs:string external;
\ No newline at end of file
+declare function fn:string($arg as item()?) as xs:string external;
+
+(:~
+ : @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-available-environment-variables">fn:available-environment-variables</a>
+ :)
+declare function fn:available-environment-variables() as xs:string* external;
+
+(:~
+ : @see for semantics please check <a href="http://www.w3.org/TR/xpath-functions-30/#func-environment-variable">fn:environment-variable</a>
+ :)
+declare function fn:environment-variable($arg as xs:string) as xs:string? external;
\ No newline at end of file
=== modified file 'src/context/dynamic_context.cpp'
--- src/context/dynamic_context.cpp 2011-12-21 14:40:33 +0000
+++ src/context/dynamic_context.cpp 2012-01-10 23:57:31 +0000
@@ -21,6 +21,7 @@
#include <sys/timeb.h>
#ifdef UNIX
#include <sys/time.h>
+#include <unistd.h>
#endif
#include "store/api/iterator.h"
@@ -29,6 +30,7 @@
#include "store/api/store.h"
#include "store/api/index.h"
#include "store/api/ic.h"
+#include "store/api/iterator_factory.h"
#include "system/globalenv.h"
@@ -54,6 +56,11 @@
using namespace std;
+#ifdef UNIX
+//external variables
+extern char **environ;
+#endif
+
namespace zorba
{
@@ -122,6 +129,7 @@
theParent(NULL),
keymap(NULL),
theAvailableIndices(NULL),
+ theEnvironmentVariables(NULL),
theDocLoadingUserTime(0.0),
theDocLoadingTime(0)
{
@@ -130,6 +138,7 @@
if(parent == NULL)
{
reset_current_date_time();
+ set_environment_variables();
}
else
{
@@ -161,6 +170,9 @@
delete keymap;
}
+ if(theEnvironmentVariables)
+ delete theEnvironmentVariables;
+
if (theAvailableIndices)
delete theAvailableIndices;
}
@@ -259,6 +271,116 @@
/*******************************************************************************
********************************************************************************/
+void dynamic_context::set_environment_variables()
+{
+ if(!theEnvironmentVariables)
+ theEnvironmentVariables = new EnvVarMap();
+
+ #if defined (WIN32)
+ LPTCH envVarsCH = GetEnvironmentStrings();
+ LPTSTR envVarsSTR = (LPTSTR) envVarsCH;
+
+ while (*envVarsSTR)
+ {
+ int size = lstrlen(envVarsSTR);
+
+ char * envVar = new char[size+1];
+ WideCharToMultiByte( CP_ACP,
+ WC_NO_BEST_FIT_CHARS|WC_COMPOSITECHECK|WC_DEFAULTCHAR,
+ envVarsSTR,
+ size+1,
+ envVar,
+ size+1,
+ NULL,
+ NULL);
+ zstring envVarZS(envVar);
+
+ int eqPos = envVarZS.find_first_of("=");
+
+ if(eqPos > 0)
+ {
+ zstring varname(envVarZS.substr(0, eqPos));
+ zstring varvalue(envVarZS.substr(eqPos+1, size));
+
+ if (!varname.empty() || !varvalue.empty())
+ theEnvironmentVariables->insert(std::pair<zstring, zstring>(varname,varvalue));
+ }
+
+
+ delete envVar;
+ envVarsSTR += lstrlen(envVarsSTR) + 1;
+ }
+
+ FreeEnvironmentStrings(envVarsCH);
+ #else
+ for(char **env = environ; *env; ++env)
+ {
+ zstring envVarZS(*env);
+
+ int size = envVarZS.size();
+
+ int eqPos = envVarZS.find_first_of("=");
+
+ if(eqPos > 0)
+ {
+ zstring varname(envVarZS.substr(0, eqPos));
+ zstring varvalue(envVarZS.substr(eqPos+1, size));
+
+ if (!varname.empty() || !varvalue.empty())
+ theEnvironmentVariables->insert(std::pair<zstring, zstring>(varname,varvalue));
+ }
+ }
+
+ #endif
+
+}
+/*******************************************************************************
+
+********************************************************************************/
+store::Iterator_t dynamic_context::available_environment_variables() const
+{
+ EnvVarMap::iterator lIte = theEnvironmentVariables->begin();
+ EnvVarMap::iterator lEnd = theEnvironmentVariables->end();
+
+ std::vector<store::Item_t> lVarNames;
+
+ for(;lIte != lEnd; ++lIte)
+ {
+ store::Item_t varname;
+ zstring zsvarname = lIte->first;
+ GENV_ITEMFACTORY->createString(varname, zsvarname);
+ lVarNames.push_back(varname);
+ }
+
+ if(lVarNames.empty())
+ {
+ return NULL;
+ }
+
+ return GENV_STORE.createTempSeq(lVarNames)->getIterator();
+}
+
+/*******************************************************************************
+
+********************************************************************************/
+store::Item_t dynamic_context::get_environment_variable(const zstring varname) const
+{
+ EnvVarMap::iterator lIter = theEnvironmentVariables->find(varname);
+
+ if(lIter == theEnvironmentVariables->end())
+ {
+ return NULL;
+ }
+
+ store::Item_t value;
+ zstring varvalue = lIter->second;
+ GENV_ITEMFACTORY->createString(value, varvalue);
+ return value;
+}
+
+/*******************************************************************************
+
+********************************************************************************/
void dynamic_context::add_variable(ulong varid, store::Iterator_t& value)
{
declare_variable(varid);
@@ -616,7 +738,6 @@
{
keymap = new ValueMap(8, false);
}
-
if (!keymap->insert(aName, val))
{
keymap->update(aName, val);
=== modified file 'src/context/dynamic_context.h'
--- src/context/dynamic_context.h 2011-11-09 05:42:08 +0000
+++ src/context/dynamic_context.h 2012-01-10 23:57:31 +0000
@@ -99,6 +99,8 @@
typedef ItemPointerHashMap<store::Index_t> IndexMap;
+ typedef std::map<const zstring,const zstring> EnvVarMap;
+
protected:
dynamic_context * theParent;
@@ -113,6 +115,9 @@
IndexMap * theAvailableIndices;
+ //MODIFY
+ EnvVarMap * theEnvironmentVariables;
+
public:
double theDocLoadingUserTime;
double theDocLoadingTime;
@@ -136,6 +141,12 @@
store::Item_t get_current_time_millis() const;
+ void set_environment_variables();
+
+ store::Item_t get_environment_variable(const zstring varname) const;
+
+ store::Iterator_t available_environment_variables() const;
+
void set_implicit_timezone(long tzone_seconds);
long get_implicit_timezone() const;
=== modified file 'src/functions/func_serialize_impl.cpp'
--- src/functions/func_serialize_impl.cpp 2012-01-03 12:10:06 +0000
+++ src/functions/func_serialize_impl.cpp 2012-01-10 23:57:31 +0000
@@ -13,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+#include "stdafx.h"
#include "functions/function.h"
#include "functions/func_parsing_and_serializing.h"
=== modified file 'src/functions/function_consts.h'
--- src/functions/function_consts.h 2012-01-03 12:10:06 +0000
+++ src/functions/function_consts.h 2012-01-10 23:57:31 +0000
@@ -37,6 +37,9 @@
FN_HEAD_1,
FN_TAIL_1,
+
+ FN_AVAILABLE_ENVIRONMENT_VARIABLES_0,
+ FN_ENVIRONMENT_VARIABLE_1,
FN_ZORBA_EVAL_1,
FN_ZORBA_EVAL_N_1,
=== modified file 'src/functions/library.cpp'
--- src/functions/library.cpp 2011-10-14 07:35:51 +0000
+++ src/functions/library.cpp 2012-01-10 23:57:31 +0000
@@ -24,6 +24,7 @@
#include "functions/function.h"
#include "functions/signature.h"
+#include "functions/func_access.h"
#include "functions/func_accessors.h"
#include "functions/func_accessors_impl.h"
#include "functions/func_any_uri.h"
@@ -93,6 +94,7 @@
theFunctions = new function*[FunctionConsts::FN_MAX_FUNC];
+ populate_context_access(sctx);
populate_context_accessors(sctx);
populate_context_any_uri(sctx);
populate_context_accessors_impl(sctx);
=== added file 'src/functions/pregenerated/func_access.cpp'
--- src/functions/pregenerated/func_access.cpp 1970-01-01 00:00:00 +0000
+++ src/functions/pregenerated/func_access.cpp 2012-01-10 23:57:31 +0000
@@ -0,0 +1,84 @@
+/*
+ * 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/access/access.h"
+#include "functions/func_access.h"
+
+
+namespace zorba{
+
+
+
+PlanIter_t fn_available_environment_variables::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ AnnotationHolder& ann) const
+{
+ return new FnAvailableEnvironmentVariablesIterator(sctx, loc, argv);
+}
+
+PlanIter_t fn_environment_variable::codegen(
+ CompilerCB*,
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& argv,
+ AnnotationHolder& ann) const
+{
+ return new FnEnvironmentVariableIterator(sctx, loc, argv);
+}
+
+void populate_context_access(static_context* sctx)
+{
+ {
+
+
+ DECL_WITH_KIND(sctx, fn_available_environment_variables,
+ (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,
+ (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);
+
+ }
+
+}
+
+
+}
+
+
+
=== added file 'src/functions/pregenerated/func_access.h'
--- src/functions/pregenerated/func_access.h 1970-01-01 00:00:00 +0000
+++ src/functions/pregenerated/func_access.h 2012-01-10 23:57:31 +0000
@@ -0,0 +1,79 @@
+/*
+ * 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_ACCESS_H
+#define ZORBA_FUNCTIONS_ACCESS_H
+
+
+#include "common/shared_types.h"
+#include "functions/function_impl.h"
+
+
+namespace zorba {
+
+
+void populate_context_access(static_context* sctx);
+
+
+
+
+//fn:available-environment-variables
+class fn_available_environment_variables : public function
+{
+public:
+ fn_available_environment_variables(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+//fn:environment-variable
+class fn_environment_variable : public function
+{
+public:
+ fn_environment_variable(const signature& sig, FunctionConsts::FunctionKind kind)
+ :
+ function(sig, kind)
+ {
+
+ }
+
+ CODEGEN_DECL();
+};
+
+
+} //namespace zorba
+
+
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== added directory 'src/runtime/access'
=== added file 'src/runtime/access/access_impl.cpp'
--- src/runtime/access/access_impl.cpp 1970-01-01 00:00:00 +0000
+++ src/runtime/access/access_impl.cpp 2012-01-10 23:57:31 +0000
@@ -0,0 +1,99 @@
+/*
+ * 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.
+ */
+#include "stdafx.h"
+
+#include "diagnostics/assert.h"
+#include "diagnostics/xquery_diagnostics.h"
+
+
+#include "system/globalenv.h"
+
+#include "context/namespace_context.h"
+#include "context/static_context.h"
+#include "context/dynamic_context.h"
+
+#include "runtime/access/access.h"
+
+#include "runtime/visitors/planiter_visitor.h"
+
+#include "store/api/item.h"
+#include "store/api/iterator.h"
+#include "store/api/item_factory.h"
+
+#include "api/dynamiccontextimpl.h"
+#include "api/unmarshaller.h"
+#include "api/xqueryimpl.h"
+
+namespace zorba {
+
+/*******************************************************************************
+ 14.8.9 fn:available-environment-variables
+********************************************************************************/
+ bool FnAvailableEnvironmentVariablesIterator::nextImpl(store::Item_t& result, PlanState& planState) const
+ {
+ store::Iterator_t lIte;
+ std::string a;
+ FnAvailableEnvironmentVariablesIteratorState* state;
+ DEFAULT_STACK_INIT(FnAvailableEnvironmentVariablesIteratorState, state, planState);
+
+ state->theIterator = planState.theLocalDynCtx->available_environment_variables();
+
+ state->theIterator->open();
+ while(state->theIterator->next(result))
+ {
+ a = result->getStringValue().c_str();
+ STACK_PUSH(true, state);
+ }
+ state->theIterator->close();
+ STACK_END(state);
+ }
+
+ void FnAvailableEnvironmentVariablesIteratorState::init(PlanState& planState)
+ {
+ PlanIteratorState::init(planState);
+ theIterator = 0;
+ }
+
+ void FnAvailableEnvironmentVariablesIteratorState::reset(PlanState& planState)
+ {
+ PlanIteratorState::reset(planState);
+ theIterator = 0;
+ }
+
+/*******************************************************************************
+ 14.8.8 fn:environment-variable
+********************************************************************************/
+ bool FnEnvironmentVariableIterator::nextImpl(store::Item_t& result, PlanState& planState) const
+ {
+ store::Item_t item;
+ zstring varname;
+
+ PlanIteratorState* state;
+ DEFAULT_STACK_INIT(PlanIteratorState, state, planState);
+
+ if(consumeNext(item, theChildren[0].getp(),planState))
+ {
+ varname = item->getString();
+ result = planState.theLocalDynCtx->get_environment_variable(varname);
+ //if(result = null)
+ //throw error
+ STACK_PUSH(true, state);
+ }
+
+ STACK_END(state);
+ }
+
+}//namespace zorba
\ No newline at end of file
=== added directory 'src/runtime/access/pregenerated'
=== added file 'src/runtime/access/pregenerated/access.cpp'
--- src/runtime/access/pregenerated/access.cpp 1970-01-01 00:00:00 +0000
+++ src/runtime/access/pregenerated/access.cpp 2012-01-10 23:57:31 +0000
@@ -0,0 +1,98 @@
+/*
+ * 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/access/access.h"
+#include "system/globalenv.h"
+
+
+
+namespace zorba {
+
+// <FnAvailableEnvironmentVariablesIterator>
+const char* FnAvailableEnvironmentVariablesIterator::class_name_str = "FnAvailableEnvironmentVariablesIterator";
+FnAvailableEnvironmentVariablesIterator::class_factory<FnAvailableEnvironmentVariablesIterator>
+FnAvailableEnvironmentVariablesIterator::g_class_factory;
+
+const serialization::ClassVersion
+FnAvailableEnvironmentVariablesIterator::class_versions[] ={{ 1, 0x000905, false}};
+
+const int FnAvailableEnvironmentVariablesIterator::class_versions_count =
+sizeof(FnAvailableEnvironmentVariablesIterator::class_versions)/sizeof(struct serialization::ClassVersion);
+
+void FnAvailableEnvironmentVariablesIterator::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);
+}
+
+FnAvailableEnvironmentVariablesIterator::~FnAvailableEnvironmentVariablesIterator() {}
+
+FnAvailableEnvironmentVariablesIteratorState::FnAvailableEnvironmentVariablesIteratorState() {}
+
+FnAvailableEnvironmentVariablesIteratorState::~FnAvailableEnvironmentVariablesIteratorState() {}
+
+// </FnAvailableEnvironmentVariablesIterator>
+
+
+// <FnEnvironmentVariableIterator>
+const char* FnEnvironmentVariableIterator::class_name_str = "FnEnvironmentVariableIterator";
+FnEnvironmentVariableIterator::class_factory<FnEnvironmentVariableIterator>
+FnEnvironmentVariableIterator::g_class_factory;
+
+const serialization::ClassVersion
+FnEnvironmentVariableIterator::class_versions[] ={{ 1, 0x000905, false}};
+
+const int FnEnvironmentVariableIterator::class_versions_count =
+sizeof(FnEnvironmentVariableIterator::class_versions)/sizeof(struct serialization::ClassVersion);
+
+void FnEnvironmentVariableIterator::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);
+}
+
+FnEnvironmentVariableIterator::~FnEnvironmentVariableIterator() {}
+
+// </FnEnvironmentVariableIterator>
+
+
+
+}
+
+
=== added file 'src/runtime/access/pregenerated/access.h'
--- src/runtime/access/pregenerated/access.h 1970-01-01 00:00:00 +0000
+++ src/runtime/access/pregenerated/access.h 2012-01-10 23:57:31 +0000
@@ -0,0 +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_ACCESS_ACCESS_H
+#define ZORBA_RUNTIME_ACCESS_ACCESS_H
+
+
+#include "common/shared_types.h"
+
+
+
+#include "runtime/base/narybase.h"
+
+
+namespace zorba {
+
+/**
+ *
+ * Summary: returns a list of environment variable names that are suitable for
+ * passing to fn:environment-variable, as a (possible empty) sequence of
+ * strings.
+ *
+ * The function returns a sequence of strings, being the names of the environment
+ * variables in the dynamic context in some implementation-defined order.
+ *
+ * Author: Zorba Team
+ */
+class FnAvailableEnvironmentVariablesIteratorState : public PlanIteratorState
+{
+public:
+ store::Iterator_t theIterator; //the current iterator
+
+ FnAvailableEnvironmentVariablesIteratorState();
+
+ ~FnAvailableEnvironmentVariablesIteratorState();
+
+ void init(PlanState&);
+ void reset(PlanState&);
+};
+
+class FnAvailableEnvironmentVariablesIterator : public NaryBaseIterator<FnAvailableEnvironmentVariablesIterator, FnAvailableEnvironmentVariablesIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(FnAvailableEnvironmentVariablesIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnAvailableEnvironmentVariablesIterator,
+ NaryBaseIterator<FnAvailableEnvironmentVariablesIterator, FnAvailableEnvironmentVariablesIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<FnAvailableEnvironmentVariablesIterator, FnAvailableEnvironmentVariablesIteratorState>*)this);
+ }
+
+ FnAvailableEnvironmentVariablesIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<FnAvailableEnvironmentVariablesIterator, FnAvailableEnvironmentVariablesIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~FnAvailableEnvironmentVariablesIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+/**
+ *
+ * Summary: Returns the value of a system environment variable, if it exists.
+ *
+ * If there is no environment variable with a matching name, the function returns
+ * the empty sequence.
+ *
+ * Author: Zorba Team
+ */
+class FnEnvironmentVariableIterator : public NaryBaseIterator<FnEnvironmentVariableIterator, PlanIteratorState>
+{
+public:
+ SERIALIZABLE_CLASS(FnEnvironmentVariableIterator);
+
+ SERIALIZABLE_CLASS_CONSTRUCTOR2T(FnEnvironmentVariableIterator,
+ NaryBaseIterator<FnEnvironmentVariableIterator, PlanIteratorState>);
+
+ void serialize( ::zorba::serialization::Archiver& ar)
+ {
+ serialize_baseclass(ar,
+ (NaryBaseIterator<FnEnvironmentVariableIterator, PlanIteratorState>*)this);
+ }
+
+ FnEnvironmentVariableIterator(
+ static_context* sctx,
+ const QueryLoc& loc,
+ std::vector<PlanIter_t>& children)
+ :
+ NaryBaseIterator<FnEnvironmentVariableIterator, PlanIteratorState>(sctx, loc, children)
+ {}
+
+ virtual ~FnEnvironmentVariableIterator();
+
+ void accept(PlanIterVisitor& v) const;
+
+ bool nextImpl(store::Item_t& result, PlanState& aPlanState) const;
+};
+
+
+}
+#endif
+/*
+ * Local variables:
+ * mode: c++
+ * End:
+ */
=== added directory 'src/runtime/spec/access'
=== added file 'src/runtime/spec/access/access.xml'
--- src/runtime/spec/access/access.xml 1970-01-01 00:00:00 +0000
+++ src/runtime/spec/access/access.xml 2012-01-10 23:57:31 +0000
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+/////////////////////////////////////////////////////////////////////////////////
+// //
+// 14.8. Functions giving access to external information //
+// //
+/////////////////////////////////////////////////////////////////////////////////
+-->
+
+<zorba:iterators
+ xmlns:zorba="http://www.zorba-xquery.com"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.zorba-xquery.com ../runtime.xsd">
+
+<!--
+/*******************************************************************************
+ 14.8.9 fn:available-environment-variables
+********************************************************************************/
+-->
+
+ <zorba:iterator name="FnAvailableEnvironmentVariablesIterator">
+ <zorba:description author="Zorba Team">
+ Summary: returns a list of environment variable names that are suitable for
+ passing to fn:environment-variable, as a (possible empty) sequence of
+ strings.
+
+ The function returns a sequence of strings, being the names of the environment
+ variables in the dynamic context in some implementation-defined order.
+ </zorba:description>
+
+ <zorba:function>
+ <zorba:signature localname="available-environment-variables" prefix="fn">
+ <zorba:output>xs:string*</zorba:output>
+ </zorba:signature>
+
+ </zorba:function>
+
+ <zorba:state generateInit="false" generateReset="false">
+ <zorba:member type="store::Iterator_t" name="theIterator"
+ brief="the current iterator"/>
+ </zorba:state>
+
+ </zorba:iterator>
+
+<!--
+/*******************************************************************************
+14.8.9 fn:available-environment-variables
+********************************************************************************/
+-->
+
+ <zorba:iterator name="FnEnvironmentVariableIterator">
+ <zorba:description author="Zorba Team">
+ Summary: Returns the value of a system environment variable, if it exists.
+
+ If there is no environment variable with a matching name, the function returns
+ the empty sequence.
+ </zorba:description>
+
+ <zorba:function>
+ <zorba:signature localname="environment-variable" prefix="fn">
+ <zorba:param>xs:string</zorba:param>
+ <zorba:output>xs:string?</zorba:output>
+ </zorba:signature>
+
+ </zorba:function>
+
+ </zorba:iterator>
+
+</zorba:iterators>
\ No newline at end of file
=== modified file 'src/runtime/visitors/pregenerated/planiter_visitor.h'
--- src/runtime/visitors/pregenerated/planiter_visitor.h 2012-01-10 14:23:24 +0000
+++ src/runtime/visitors/pregenerated/planiter_visitor.h 2012-01-10 23:57:31 +0000
@@ -30,6 +30,10 @@
#include "zorbatypes/zstring.h"
namespace zorba{
+ class FnAvailableEnvironmentVariablesIterator;
+
+ class FnEnvironmentVariableIterator;
+
class NodeNameIterator;
class NilledIterator;
@@ -598,6 +602,12 @@
virtual ~PlanIterVisitor() {}
#include "runtime/visitors/planiter_visitor_impl_code.h"
+ virtual void beginVisit ( const FnAvailableEnvironmentVariablesIterator& ) = 0;
+ virtual void endVisit ( const FnAvailableEnvironmentVariablesIterator& ) = 0;
+
+ virtual void beginVisit ( const FnEnvironmentVariableIterator& ) = 0;
+ virtual void endVisit ( const FnEnvironmentVariableIterator& ) = 0;
+
virtual void beginVisit ( const NodeNameIterator& ) = 0;
virtual void endVisit ( const NodeNameIterator& ) = 0;
=== modified file 'src/runtime/visitors/pregenerated/printer_visitor.cpp'
--- src/runtime/visitors/pregenerated/printer_visitor.cpp 2012-01-05 13:19:14 +0000
+++ src/runtime/visitors/pregenerated/printer_visitor.cpp 2012-01-10 23:57:31 +0000
@@ -35,6 +35,7 @@
#include "util/string_util.h"
+#include "runtime/access/access.h"
#include "runtime/accessors/accessors.h"
#include "runtime/any_uri/any_uri.h"
#include "runtime/base64/base64.h"
@@ -109,6 +110,34 @@
}
+// <FnAvailableEnvironmentVariablesIterator>
+void PrinterVisitor::beginVisit ( const FnAvailableEnvironmentVariablesIterator& a) {
+ thePrinter.startBeginVisit("FnAvailableEnvironmentVariablesIterator", ++theId);
+ printCommons( &a, theId );
+ thePrinter.endBeginVisit( theId );
+}
+
+void PrinterVisitor::endVisit ( const FnAvailableEnvironmentVariablesIterator& ) {
+ thePrinter.startEndVisit();
+ thePrinter.endEndVisit();
+}
+// </FnAvailableEnvironmentVariablesIterator>
+
+
+// <FnEnvironmentVariableIterator>
+void PrinterVisitor::beginVisit ( const FnEnvironmentVariableIterator& a) {
+ thePrinter.startBeginVisit("FnEnvironmentVariableIterator", ++theId);
+ printCommons( &a, theId );
+ thePrinter.endBeginVisit( theId );
+}
+
+void PrinterVisitor::endVisit ( const FnEnvironmentVariableIterator& ) {
+ thePrinter.startEndVisit();
+ thePrinter.endEndVisit();
+}
+// </FnEnvironmentVariableIterator>
+
+
// <NodeNameIterator>
void PrinterVisitor::beginVisit ( const NodeNameIterator& a) {
thePrinter.startBeginVisit("NodeNameIterator", ++theId);
=== modified file 'src/runtime/visitors/pregenerated/printer_visitor.h'
--- src/runtime/visitors/pregenerated/printer_visitor.h 2012-01-05 13:19:14 +0000
+++ src/runtime/visitors/pregenerated/printer_visitor.h 2012-01-10 23:57:31 +0000
@@ -47,6 +47,12 @@
#include "runtime/visitors/printer_visitor_impl.h"
+ void beginVisit( const FnAvailableEnvironmentVariablesIterator& );
+ void endVisit ( const FnAvailableEnvironmentVariablesIterator& );
+
+ void beginVisit( const FnEnvironmentVariableIterator& );
+ void endVisit ( const FnEnvironmentVariableIterator& );
+
void beginVisit( const NodeNameIterator& );
void endVisit ( const NodeNameIterator& );
Follow ups
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Juan Zacarias, 2012-04-09
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Chris Hillery, 2012-03-30
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Matthias Brantner, 2012-03-23
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Juan Zacarias, 2012-03-22
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Matthias Brantner, 2012-03-15
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Juan Zacarias, 2012-03-14
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Sorin Marian Nasoi, 2012-02-29
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Matthias Brantner, 2012-02-26
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Matthias Brantner, 2012-02-24
-
Re: [Merge] lp:~zorba-coders/zorba/fn_envvars into lp:zorba
From: Chris Hillery, 2012-01-11