From d39880eef211a296fa8ef4712cdef5945d08527c Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 20 Dec 2020 14:14:07 +0100 Subject: std::shared_ptr --- src/xml.h | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'src/xml.h') diff --git a/src/xml.h b/src/xml.h index 582965a2..25abd436 100644 --- a/src/xml.h +++ b/src/xml.h @@ -41,61 +41,61 @@ namespace dcp { template -boost::shared_ptr +std::shared_ptr optional_type_child (cxml::Node const & node, std::string name) { - std::list > n = node.node_children (name); + std::list > n = node.node_children (name); if (n.size() > 1) { throw XMLError ("duplicate XML tag"); } else if (n.empty ()) { - return boost::shared_ptr (); + return std::shared_ptr (); } - return boost::shared_ptr (new T (n.front ())); + return std::shared_ptr (new T (n.front ())); } template -boost::shared_ptr type_child (boost::shared_ptr node, std::string name) { - return boost::shared_ptr (new T (node->node_child (name))); +std::shared_ptr type_child (std::shared_ptr node, std::string name) { + return std::shared_ptr (new T (node->node_child (name))); } template -boost::shared_ptr -optional_type_child (boost::shared_ptr node, std::string name) +std::shared_ptr +optional_type_child (std::shared_ptr node, std::string name) { return optional_type_child (*node.get(), name); } template -std::list > +std::list > type_children (cxml::Node const & node, std::string name) { - std::list > n = node.node_children (name); - std::list > r; - for (typename std::list >::iterator i = n.begin(); i != n.end(); ++i) { - r.push_back (boost::shared_ptr (new T (*i))); + std::list > n = node.node_children (name); + std::list > r; + for (typename std::list >::iterator i = n.begin(); i != n.end(); ++i) { + r.push_back (std::shared_ptr (new T (*i))); } return r; } template -std::list > -type_children (boost::shared_ptr node, std::string name) +std::list > +type_children (std::shared_ptr node, std::string name) { return type_children (*node.get(), name); } template -std::list > +std::list > type_grand_children (cxml::Node const & node, std::string name, std::string sub) { - boost::shared_ptr p = node.node_child (name); + std::shared_ptr p = node.node_child (name); return type_children (p, sub); } template -std::list > -type_grand_children (boost::shared_ptr node, std::string name, std::string sub) +std::list > +type_grand_children (std::shared_ptr node, std::string name, std::string sub) { return type_grand_children (*node.get(), name, sub); } -- cgit v1.2.3