Suuports clang compiler
[anna.git] / source / xml / Parser.cpp
index 4c621fc..30c2909 100644 (file)
@@ -1,8 +1,8 @@
-// ANNA - Anna is Not 'N' Anymore
+// ANNA - Anna is Not Nothingness Anymore
 //
 // (c) Copyright 2005-2014 Eduardo Ramos Testillano & Francisco Ruiz Rayo
 //
-// https://bitbucket.org/testillano/anna
+// 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
@@ -14,7 +14,7 @@
 // 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 Google Inc. nor the names of its
+//     *  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.
 //
@@ -125,8 +125,8 @@ throw(RuntimeException) {
   const char* w;
 
   while(xmlNode != NULL) {
-    switch(xmlNode->type) {
-    case XML_ELEMENT_NODE:
+
+    if((xmlNode->type) == XML_ELEMENT_NODE) {
       child  = node->createChild((const char*) xmlNode->name);
 
       for(xmlNs* ns = xmlNode->nsDef; ns != NULL; ns = ns->next)
@@ -138,8 +138,8 @@ throw(RuntimeException) {
 
       attributes(child, xmlNode->properties);
       children(child, xmlNode->children);
-      break;
-    case XML_TEXT_NODE:
+    }
+    else if((xmlNode->type) == XML_TEXT_NODE) {
       w = (const char*) xmlNode->content;
       isSeparator = true;
 
@@ -148,16 +148,14 @@ throw(RuntimeException) {
           isSeparator = false;
           break;
         }
-
         w ++;
       }
 
       if(isSeparator == false)
         node->createText(decode(xmlNode->content));
-
-      break;
     }
 
+
     xmlNode = xmlNode->next;
   }
 }