diff options
Diffstat (limited to 'project2/xml/xmlScriptParser.h')
-rw-r--r-- | project2/xml/xmlScriptParser.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/project2/xml/xmlScriptParser.h b/project2/xml/xmlScriptParser.h index ae5f3af..4f9881b 100644 --- a/project2/xml/xmlScriptParser.h +++ b/project2/xml/xmlScriptParser.h @@ -5,7 +5,6 @@ #include "exceptions.h" #include "scriptLoader.h" #include "scripts.h" -#include <intrusivePtrBase.h> #include <boost/filesystem/path.hpp> #include <libxml++/document.h> #include <libxml++/nodes/element.h> @@ -23,17 +22,17 @@ class XmlScriptNode : public ScriptNode { ScriptNodes children() const; ScriptNodes childrenIn(const Glib::ustring&) const; bool valueExists(const Glib::ustring&) const; - VariableImpl * variable(const boost::optional<Glib::ustring> & defaultSource) const; - VariableImpl * variable(const Glib::ustring&) const; + std::shared_ptr<VariableImpl> variable(const boost::optional<Glib::ustring> & defaultSource) const; + std::shared_ptr<VariableImpl> variable(const Glib::ustring&) const; bool applyValue(const Glib::ustring & name, VariableType & target, ExecContext *) const; void composeWithCallbacks(const ScriptNode::LiteralCallback&, const ScriptNode::NodeCallback&) const; private: const xmlpp::Element * element; - mutable boost::shared_ptr<ScriptNodes> childrenCache; + mutable std::shared_ptr<ScriptNodes> childrenCache; }; -class DLL_PUBLIC XmlScriptParser : public xmlpp::DomParser, public ScriptReader { +class DLL_PUBLIC XmlScriptParser : public xmlpp::DomParser, public ScriptReader, public std::enable_shared_from_this<XmlScriptParser> { public: SimpleMessageException(ParseError); SimpleMessageExceptionBase(NotReadable, ParseError); |