X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=source%2Fxml%2FNode.cpp;h=ef476879aadfca128e0903f751feaf5b1002080d;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hp=3f49a6e6ae7dc2a623abba2574514566e78cb29b;hpb=39033fd99e58e994a5e98c1060dcc79e0d81f9c9;p=anna.git diff --git a/source/xml/Node.cpp b/source/xml/Node.cpp index 3f49a6e..ef47687 100644 --- a/source/xml/Node.cpp +++ b/source/xml/Node.cpp @@ -1,37 +1,9 @@ -// ANNA - Anna is Not Nothingness Anymore -// -// (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo -// -// http://redmine.teslayout.com/projects/anna-suite -// -// 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 copyright holder 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 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. -// -// Authors: eduardo.ramos.testillano@gmail.com -// cisco.tierra@gmail.com +// ANNA - Anna is Not Nothingness Anymore // +// // +// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo // +// // +// See project site at http://redmine.teslayout.com/projects/anna-suite // +// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE // #include @@ -84,7 +56,7 @@ Node::~Node() { } void Node::clear() -throw() { +{ for(attribute_iterator aa = a_attributes.begin(), maxaa = a_attributes.end(); aa != maxaa; aa ++) a_attribute_pool->release(attribute(aa)); @@ -113,7 +85,7 @@ throw() { } const Attribute* Node::getAttribute(const char* name, const bool exceptionWhenNotFound) const -throw(RuntimeException) { +noexcept(false) { const Attribute* result(NULL); result = find(name, attribute_begin(), attribute_end()); @@ -129,7 +101,7 @@ throw(RuntimeException) { } xml::Attribute* Node::createAttribute(const char* name, const char* value, const Namespace* _namespace) -throw() { +{ Attribute* attribute = a_attribute_pool->create(); attribute->setNode(this); attribute->setName(name); @@ -140,7 +112,7 @@ throw() { } xml::Text* Node::createText(const char* text) -throw(RuntimeException) { +noexcept(false) { if(a_text != NULL) { string msg = asString(); msg += " | "; @@ -156,7 +128,7 @@ throw(RuntimeException) { } Node* Node::createChild(const char* name) -throw() { +{ Node* result = a_node_pool->create(); result->a_parent = this; result->setName(name); @@ -172,7 +144,7 @@ throw() { * Recordar que todos los namespaces se crean sólo en el nodo ROOT. */ const Namespace* Node::createNamespace(const std::string& name, const char* reference) -throw(RuntimeException) { +noexcept(false) { const Namespace* result = NULL; if((result = namespace_find(name, false)) != NULL) { @@ -198,7 +170,7 @@ throw(RuntimeException) { } const Node* Node::find(const char* childName, const bool exceptionWhenNotFound) const -throw(RuntimeException) { +noexcept(false) { const Node* child; for(Node::Children::const_iterator ii = a_children.begin(), maxii = a_children.end(); ii != maxii; ii ++) { @@ -221,7 +193,7 @@ throw(RuntimeException) { } Namespace* Node::namespace_find(const std::string& name, const bool exceptionWhenNotFound) -throw(RuntimeException) { +noexcept(false) { Namespace* result = a_root->a_namespaces->find(name); if(result == NULL && exceptionWhenNotFound == true) { @@ -236,7 +208,7 @@ throw(RuntimeException) { } string Node::asString() const -throw() { +{ string result("xml::Node { Name: "); result += a_name; @@ -249,7 +221,7 @@ throw() { } const Attribute* Node::find(const char* attrName, const_attribute_iterator begin, const_attribute_iterator end) -throw() { +{ Attribute* attribute; for(; begin != end; begin ++) {