summaryrefslogtreecommitdiff
path: root/src/xml.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-12-20 14:11:13 +0100
committerCarl Hetherington <cth@carlh.net>2021-01-05 02:09:49 +0100
commit47727a7c80b60a0fd0ce18d8347b14241fc48f97 (patch)
treee1137ad3c8dc58ef5017011cdcc89a378b223092 /src/xml.h
parent64eb1161584a9813591cf958fbc2fa0208d58ce8 (diff)
std::shared_ptr
Diffstat (limited to 'src/xml.h')
-rw-r--r--src/xml.h38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/xml.h b/src/xml.h
index d07188f..bf1477b 100644
--- a/src/xml.h
+++ b/src/xml.h
@@ -31,61 +31,61 @@ namespace sub
{
template <class T>
-boost::shared_ptr<T>
+std::shared_ptr<T>
optional_type_child (cxml::Node const & node, std::string name)
{
- std::list<boost::shared_ptr<cxml::Node> > n = node.node_children (name);
+ std::list<std::shared_ptr<cxml::Node> > n = node.node_children (name);
if (n.size() > 1) {
throw XMLError ("duplicate XML tag");
} else if (n.empty ()) {
- return boost::shared_ptr<T> ();
+ return std::shared_ptr<T> ();
}
- return boost::shared_ptr<T> (new T (n.front ()));
+ return std::shared_ptr<T> (new T (n.front ()));
}
template <class T>
-boost::shared_ptr<T> type_child (boost::shared_ptr<const cxml::Node> node, std::string name) {
- return boost::shared_ptr<T> (new T (node->node_child (name)));
+std::shared_ptr<T> type_child (std::shared_ptr<const cxml::Node> node, std::string name) {
+ return std::shared_ptr<T> (new T (node->node_child (name)));
}
template <class T>
-boost::shared_ptr<T>
-optional_type_child (boost::shared_ptr<const cxml::Node> node, std::string name)
+std::shared_ptr<T>
+optional_type_child (std::shared_ptr<const cxml::Node> node, std::string name)
{
return optional_type_child<T> (*node.get(), name);
}
template <class T>
-std::list<boost::shared_ptr<T> >
+std::list<std::shared_ptr<T> >
type_children (cxml::Node const & node, std::string name)
{
- std::list<boost::shared_ptr<cxml::Node> > n = node.node_children (name);
- std::list<boost::shared_ptr<T> > r;
- for (typename std::list<boost::shared_ptr<cxml::Node> >::iterator i = n.begin(); i != n.end(); ++i) {
- r.push_back (boost::shared_ptr<T> (new T (*i)));
+ std::list<std::shared_ptr<cxml::Node> > n = node.node_children (name);
+ std::list<std::shared_ptr<T> > r;
+ for (typename std::list<std::shared_ptr<cxml::Node> >::iterator i = n.begin(); i != n.end(); ++i) {
+ r.push_back (std::shared_ptr<T> (new T (*i)));
}
return r;
}
template <class T>
-std::list<boost::shared_ptr<T> >
-type_children (boost::shared_ptr<const cxml::Node> node, std::string name)
+std::list<std::shared_ptr<T> >
+type_children (std::shared_ptr<const cxml::Node> node, std::string name)
{
return type_children<T> (*node.get(), name);
}
template <class T>
-std::list<boost::shared_ptr<T> >
+std::list<std::shared_ptr<T> >
type_grand_children (cxml::Node const & node, std::string name, std::string sub)
{
- boost::shared_ptr<const cxml::Node> p = node.node_child (name);
+ std::shared_ptr<const cxml::Node> p = node.node_child (name);
return type_children<T> (p, sub);
}
template <class T>
-std::list<boost::shared_ptr<T> >
-type_grand_children (boost::shared_ptr<const cxml::Node> node, std::string name, std::string sub)
+std::list<std::shared_ptr<T> >
+type_grand_children (std::shared_ptr<const cxml::Node> node, std::string name, std::string sub)
{
return type_grand_children<T> (*node.get(), name, sub);
}