lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [5722] Refactor to retain the xml parser object a little l


From: Greg Chicares
Subject: [lmi-commits] [5722] Refactor to retain the xml parser object a little longer
Date: Mon, 29 Apr 2013 20:22:33 +0000

Revision: 5722
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5722
Author:   chicares
Date:     2013-04-29 20:22:32 +0000 (Mon, 29 Apr 2013)
Log Message:
-----------
Refactor to retain the xml parser object a little longer

Modified Paths:
--------------
    lmi/trunk/mec_xml_document.cpp
    lmi/trunk/mec_xml_document.hpp
    lmi/trunk/multiple_cell_document.cpp
    lmi/trunk/multiple_cell_document.hpp
    lmi/trunk/single_cell_document.cpp
    lmi/trunk/single_cell_document.hpp

Modified: lmi/trunk/mec_xml_document.cpp
===================================================================
--- lmi/trunk/mec_xml_document.cpp      2013-04-28 18:28:17 UTC (rev 5721)
+++ lmi/trunk/mec_xml_document.cpp      2013-04-29 20:22:32 UTC (rev 5722)
@@ -53,7 +53,7 @@
     :input_data_()
 {
     xml_lmi::dom_parser parser(filename);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
 }
 
 //============================================================================
@@ -69,8 +69,9 @@
 }
 
 //============================================================================
-void mec_xml_document::parse(xml::element const& root)
+void mec_xml_document::parse(xml_lmi::dom_parser const& parser)
 {
+    xml::element const& root(parser.root_node(xml_root_name()));
     xml::const_nodes_view const elements(root.elements());
     LMI_ASSERT(!elements.empty());
     xml::const_nodes_view::const_iterator i(elements.begin());
@@ -85,7 +86,7 @@
 void mec_xml_document::read(std::istream const& is)
 {
     xml_lmi::dom_parser parser(is);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
 }
 
 //============================================================================

Modified: lmi/trunk/mec_xml_document.hpp
===================================================================
--- lmi/trunk/mec_xml_document.hpp      2013-04-28 18:28:17 UTC (rev 5721)
+++ lmi/trunk/mec_xml_document.hpp      2013-04-29 20:22:32 UTC (rev 5722)
@@ -54,7 +54,7 @@
     void write(std::ostream&) const;
 
   private:
-    void parse(xml::element const&);
+    void parse(xml_lmi::dom_parser const&);
     std::string const& xml_root_name() const;
 
     mec_input input_data_;

Modified: lmi/trunk/multiple_cell_document.cpp
===================================================================
--- lmi/trunk/multiple_cell_document.cpp        2013-04-28 18:28:17 UTC (rev 
5721)
+++ lmi/trunk/multiple_cell_document.cpp        2013-04-29 20:22:32 UTC (rev 
5722)
@@ -53,7 +53,7 @@
 multiple_cell_document::multiple_cell_document(std::string const& filename)
 {
     xml_lmi::dom_parser parser(filename);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
     assert_vector_sizes_are_sane();
 }
 
@@ -115,12 +115,14 @@
 
 /// Read xml into vectors of class Input.
 
-void multiple_cell_document::parse(xml::element const& root)
+void multiple_cell_document::parse(xml_lmi::dom_parser const& parser)
 {
+    xml::element const& root(parser.root_node(xml_root_name()));
+
     int file_version = 0;
     if(!xml_lmi::get_attr(root, "version", file_version))
         {
-        parse_v0(root);
+        parse_v0(parser);
         return;
         }
 
@@ -163,8 +165,10 @@
 
 /// Parse obsolete version 0 xml (for backward compatibility).
 
-void multiple_cell_document::parse_v0(xml::element const& root)
+void multiple_cell_document::parse_v0(xml_lmi::dom_parser const& parser)
 {
+    xml::element const& root(parser.root_node(xml_root_name()));
+
     Input temp;
 
     xml::const_nodes_view const elements(root.elements());
@@ -352,7 +356,7 @@
 void multiple_cell_document::read(std::istream const& is)
 {
     xml_lmi::dom_parser parser(is);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
 }
 
 //============================================================================

Modified: lmi/trunk/multiple_cell_document.hpp
===================================================================
--- lmi/trunk/multiple_cell_document.hpp        2013-04-28 18:28:17 UTC (rev 
5721)
+++ lmi/trunk/multiple_cell_document.hpp        2013-04-29 20:22:32 UTC (rev 
5722)
@@ -58,8 +58,8 @@
     void write(std::ostream&) const;
 
   private:
-    void parse   (xml::element const&);
-    void parse_v0(xml::element const&);
+    void parse   (xml_lmi::dom_parser const&);
+    void parse_v0(xml_lmi::dom_parser const&);
 
     void assert_vector_sizes_are_sane() const;
 

Modified: lmi/trunk/single_cell_document.cpp
===================================================================
--- lmi/trunk/single_cell_document.cpp  2013-04-28 18:28:17 UTC (rev 5721)
+++ lmi/trunk/single_cell_document.cpp  2013-04-29 20:22:32 UTC (rev 5722)
@@ -54,7 +54,7 @@
     :input_data_()
 {
     xml_lmi::dom_parser parser(filename);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
 }
 
 //============================================================================
@@ -82,8 +82,10 @@
 }
 
 //============================================================================
-void single_cell_document::parse(xml::element const& root)
+void single_cell_document::parse(xml_lmi::dom_parser const& parser)
 {
+    xml::element const& root(parser.root_node(xml_root_name()));
+
     xml::const_nodes_view const elements(root.elements());
     LMI_ASSERT(!elements.empty());
     xml::const_nodes_view::const_iterator i(elements.begin());
@@ -98,7 +100,7 @@
 void single_cell_document::read(std::istream const& is)
 {
     xml_lmi::dom_parser parser(is);
-    parse(parser.root_node(xml_root_name()));
+    parse(parser);
 }
 
 //============================================================================

Modified: lmi/trunk/single_cell_document.hpp
===================================================================
--- lmi/trunk/single_cell_document.hpp  2013-04-28 18:28:17 UTC (rev 5721)
+++ lmi/trunk/single_cell_document.hpp  2013-04-29 20:22:32 UTC (rev 5722)
@@ -54,7 +54,7 @@
     void write(std::ostream&) const;
 
   private:
-    void parse(xml::element const&);
+    void parse(xml_lmi::dom_parser const&);
 
     int                class_version() const;
     std::string const& xml_root_name() const;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]