X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fcxml.cc;h=922a3d713a45849d2078438ecfb39b1ee61915fc;hb=refs%2Ftags%2Fv0.17.0;hp=c21bd19f8e7a3e6d50ef1b5da32dae4b06570d79;hpb=dbcf32baf0af10eeaac33460dd617bf1de3075ca;p=libcxml.git diff --git a/src/cxml.cc b/src/cxml.cc index c21bd19..922a3d7 100644 --- a/src/cxml.cc +++ b/src/cxml.cc @@ -70,7 +70,7 @@ cxml::Node::optional_node_child (string name) const if (n.size() > 1) { throw cxml::Error ("duplicate XML tag " + name); } else if (n.empty ()) { - return shared_ptr (); + return {}; } return n.front (); @@ -124,7 +124,7 @@ cxml::Node::optional_string_child (string c) const } if (nodes.empty ()) { - return optional (); + return {}; } return nodes.front()->content(); @@ -142,7 +142,7 @@ cxml::Node::optional_bool_child (string c) const { auto const s = optional_string_child (c); if (!s) { - return optional (); + return {}; } return (s.get() == "1" || s.get() == "yes" || s.get() == "True"); @@ -175,12 +175,12 @@ cxml::Node::optional_string_attribute (string name) const { auto e = dynamic_cast (_node); if (!e) { - return optional (); + return {}; } auto a = e->get_attribute (name); if (!a) { - return optional (); + return {}; } return string (a->get_value ()); @@ -198,7 +198,7 @@ cxml::Node::optional_bool_attribute (string name) const { auto s = optional_string_attribute (name); if (!s) { - return optional (); + return {}; } return (s.get() == "1" || s.get() == "yes");