From d2a9a09acbcd06741bd491998208dbb434ef7a0c Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Fri, 15 Jul 2016 22:15:33 +0200 Subject: [PATCH] [DEBUG] fix the use of ememory --- exml/Node.cpp | 4 ++-- exml/Node.h | 2 +- exml/internal/Attribute.h | 4 ++-- exml/internal/Comment.h | 4 ++-- exml/internal/Declaration.h | 4 ++-- exml/internal/Document.h | 4 ++-- exml/internal/Element.cpp | 10 +++++----- exml/internal/Element.h | 10 +++++----- exml/internal/Node.cpp | 18 ++++++++++++------ exml/internal/Node.h | 12 ++++++------ exml/internal/Text.h | 4 ++-- 11 files changed, 41 insertions(+), 35 deletions(-) diff --git a/exml/Node.cpp b/exml/Node.cpp index bc46493..2b424bb 100644 --- a/exml/Node.cpp +++ b/exml/Node.cpp @@ -25,8 +25,8 @@ std::ostream& exml::operator <<(std::ostream& _os, const exml::Node& _obj) { } -exml::Node::Node(ememory::SharedPtr _internalNode) : - m_data(_internalNode) { +exml::Node::Node(const ememory::SharedPtr& _internalNode) : + m_data(ememory::constPointerCast(_internalNode)) { // nothing to DO ... } diff --git a/exml/Node.h b/exml/Node.h index b8a51f0..d74c76e 100644 --- a/exml/Node.h +++ b/exml/Node.h @@ -38,7 +38,7 @@ namespace exml { * @brief basic element of a xml structure * @param[in] _internalNode Internal reference of the Node */ - Node(ememory::SharedPtr _internalNode); + Node(const ememory::SharedPtr& _internalNode); /** * @brief basic element of a xml structure */ diff --git a/exml/internal/Attribute.h b/exml/internal/Attribute.h index 5c7cc7f..e4bc21d 100644 --- a/exml/internal/Attribute.h +++ b/exml/internal/Attribute.h @@ -55,8 +55,8 @@ namespace exml { ememory::SharedPtr toAttribute() override { return ememory::staticPointerCast(sharedFromThis()); }; - ememory::SharedPtr toAttribute() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toAttribute() const override { + return ememory::staticPointerCast(sharedFromThis()); }; void clear() override; }; diff --git a/exml/internal/Comment.h b/exml/internal/Comment.h index 686dbcc..244ced0 100644 --- a/exml/internal/Comment.h +++ b/exml/internal/Comment.h @@ -38,8 +38,8 @@ namespace exml { ememory::SharedPtr toComment() override { return ememory::staticPointerCast(sharedFromThis()); } - ememory::SharedPtr toComment() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toComment() const override { + return ememory::staticPointerCast(sharedFromThis()); } }; } diff --git a/exml/internal/Declaration.h b/exml/internal/Declaration.h index e0397a6..0ef7853 100644 --- a/exml/internal/Declaration.h +++ b/exml/internal/Declaration.h @@ -38,8 +38,8 @@ namespace exml { ememory::SharedPtr toDeclaration() override { return ememory::staticPointerCast(sharedFromThis()); }; - ememory::SharedPtr toDeclaration() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toDeclaration() const override { + return ememory::staticPointerCast(sharedFromThis()); }; }; /** diff --git a/exml/internal/Document.h b/exml/internal/Document.h index 61a340b..2b4b30c 100644 --- a/exml/internal/Document.h +++ b/exml/internal/Document.h @@ -112,8 +112,8 @@ namespace exml { ememory::SharedPtr toDocument() override { return ememory::staticPointerCast(sharedFromThis()); } - ememory::SharedPtr toDocument() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toDocument() const override { + return ememory::staticPointerCast(sharedFromThis()); } }; } diff --git a/exml/internal/Element.cpp b/exml/internal/Element.cpp index 390d046..a4a12be 100644 --- a/exml/internal/Element.cpp +++ b/exml/internal/Element.cpp @@ -42,7 +42,7 @@ ememory::SharedPtr exml::internal::Element::getNode(int32_ return m_listSub[_id]; } -ememory::SharedPtr exml::internal::Element::getNode(int32_t _id) const { +const ememory::SharedPtr exml::internal::Element::getNode(int32_t _id) const { if ( _id <0 || (size_t)_id>=m_listSub.size()) { return nullptr; @@ -59,8 +59,8 @@ ememory::SharedPtr exml::internal::Element::getElement( return tmpp->toElement(); } -ememory::SharedPtr exml::internal::Element::getElement(int32_t _id) const { - ememory::SharedPtr tmpp = getNode(_id); +const ememory::SharedPtr exml::internal::Element::getElement(int32_t _id) const { + const ememory::SharedPtr tmpp = getNode(_id); if (tmpp == nullptr) { return nullptr; } @@ -84,7 +84,7 @@ ememory::SharedPtr exml::internal::Element::getNamed(co return nullptr; } -ememory::SharedPtr exml::internal::Element::getNamed(const std::string& _name) const { +const ememory::SharedPtr exml::internal::Element::getNamed(const std::string& _name) const { if (_name.size() == 0) { return nullptr; } @@ -163,7 +163,7 @@ bool exml::internal::Element::iGenerate(std::string& _data, int32_t _indent) con if( m_listSub.size() == 1 && m_listSub[0] != nullptr && m_listSub[0]->getType() == exml::nodeType::text - && std::dynamic_pointer_cast(m_listSub[0])->countLines() == 1) { + && ememory::dynamicPointerCast(m_listSub[0])->countLines() == 1) { _data += ">"; m_listSub[0]->iGenerate(_data,0); EXML_VERBOSE(" generate : '" << _data << "'"); diff --git a/exml/internal/Element.h b/exml/internal/Element.h index 2274a1b..b4ddd4a 100644 --- a/exml/internal/Element.h +++ b/exml/internal/Element.h @@ -72,7 +72,7 @@ namespace exml { * @param[in] _id Id of the element. * @return Pointer on node. */ - ememory::SharedPtr getNode(int32_t _id) const; + const ememory::SharedPtr getNode(int32_t _id) const; /** * @brief get the element casted in Element (if the node is not an element return NULL). * @param[in] _id Id of the element. @@ -84,7 +84,7 @@ namespace exml { * @param[in] _id Id of the element. * @return Pointer on the element or NULL. */ - ememory::SharedPtr getElement(int32_t _id) const;// TODO : DEPRECATED ... not use anymore ... + const ememory::SharedPtr getElement(int32_t _id) const;// TODO : DEPRECATED ... not use anymore ... /** * @brief get an element with his name (work only with exml::internal::Element) * @param[in] _name Name of the element that is requested @@ -96,7 +96,7 @@ namespace exml { * @param[in] _name Name of the element that is requested * @return Pointer on the element or NULL. */ - ememory::SharedPtr getNamed(const std::string& _name) const; + const ememory::SharedPtr getNamed(const std::string& _name) const; /** * @brief get the internal data of the element (if the element has some sub node thay are converted in xml string == > like this it is not needed to use * @return the curent data string. if Only one text node, then we get the parssed data (no & ...) if more than one node, then we transform &,",',<,> in xml normal text... @@ -129,8 +129,8 @@ namespace exml { ememory::SharedPtr toElement() override { return ememory::staticPointerCast(sharedFromThis()); } - ememory::SharedPtr toElement() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toElement() const override { + return ememory::staticPointerCast(sharedFromThis()); } void clear() override; }; diff --git a/exml/internal/Node.cpp b/exml/internal/Node.cpp index 69aa864..b8d5fb4 100644 --- a/exml/internal/Node.cpp +++ b/exml/internal/Node.cpp @@ -5,6 +5,12 @@ */ #include +#include +#include +#include +#include +#include +#include #include static bool isWhiteChar(char32_t _val) { @@ -131,7 +137,7 @@ ememory::SharedPtr exml::internal::Node::toDocument() return nullptr; } -ememory::SharedPtr exml::internal::Node::toDocument() const { +const ememory::SharedPtr exml::internal::Node::toDocument() const { return nullptr; } @@ -139,7 +145,7 @@ ememory::SharedPtr exml::internal::Node::toAttribute( return nullptr; } -ememory::SharedPtr exml::internal::Node::toAttribute() const { +const ememory::SharedPtr exml::internal::Node::toAttribute() const { return nullptr; } @@ -147,7 +153,7 @@ ememory::SharedPtr exml::internal::Node::toComment() { return nullptr; } -ememory::SharedPtr exml::internal::Node::toComment() const { +const ememory::SharedPtr exml::internal::Node::toComment() const { return nullptr; } @@ -155,7 +161,7 @@ ememory::SharedPtr exml::internal::Node::toDeclarat return nullptr; } -ememory::SharedPtr exml::internal::Node::toDeclaration() const { +const ememory::SharedPtr exml::internal::Node::toDeclaration() const { return nullptr; } @@ -163,7 +169,7 @@ ememory::SharedPtr exml::internal::Node::toElement() { return nullptr; } -ememory::SharedPtr exml::internal::Node::toElement() const { +const ememory::SharedPtr exml::internal::Node::toElement() const { return nullptr; } @@ -171,7 +177,7 @@ ememory::SharedPtr exml::internal::Node::toText() { return nullptr; } -ememory::SharedPtr exml::internal::Node::toText() const{ +const ememory::SharedPtr exml::internal::Node::toText() const{ return nullptr; } diff --git a/exml/internal/Node.h b/exml/internal/Node.h index 31f2d7e..481d751 100644 --- a/exml/internal/Node.h +++ b/exml/internal/Node.h @@ -143,7 +143,7 @@ namespace exml { * @brief Cast the element in a Document if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toDocument() const; + virtual const ememory::SharedPtr toDocument() const; /** * @brief Cast the element in a Attribute if it is possible. * @return pointer on the class or nullptr. @@ -153,7 +153,7 @@ namespace exml { * @brief Cast the element in a Attribute if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toAttribute() const; + virtual const ememory::SharedPtr toAttribute() const; /** * @brief Cast the element in a Comment if it is possible. * @return pointer on the class or nullptr. @@ -163,7 +163,7 @@ namespace exml { * @brief Cast the element in a Comment if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toComment() const; + virtual const ememory::SharedPtr toComment() const; /** * @brief Cast the element in a Declaration if it is possible. * @return pointer on the class or nullptr. @@ -173,7 +173,7 @@ namespace exml { * @brief Cast the element in a Declaration if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toDeclaration() const; + virtual const ememory::SharedPtr toDeclaration() const; /** * @brief Cast the element in a Element if it is possible. * @return pointer on the class or nullptr. @@ -183,7 +183,7 @@ namespace exml { * @brief Cast the element in a Element if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toElement() const; + virtual const ememory::SharedPtr toElement() const; /** * @brief Cast the element in a Text if it is possible. * @return pointer on the class or nullptr. @@ -193,7 +193,7 @@ namespace exml { * @brief Cast the element in a Text if it is possible. * @return CONST pointer on the class or nullptr. */ - virtual ememory::SharedPtr toText() const; + virtual const ememory::SharedPtr toText() const; /** * @brief check if the node is a exml::internal::Document diff --git a/exml/internal/Text.h b/exml/internal/Text.h index 0ba8073..43e921f 100644 --- a/exml/internal/Text.h +++ b/exml/internal/Text.h @@ -49,8 +49,8 @@ namespace exml { ememory::SharedPtr toText() override { return ememory::staticPointerCast(sharedFromThis()); }; - ememory::SharedPtr toText() const override { - return ememory::staticPointerCast(sharedFromThis()); + const ememory::SharedPtr toText() const override { + return ememory::staticPointerCast(sharedFromThis()); }; }; /**