From c77072d586bf7aca58e6465ceab3d11a0be0021f Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Mon, 15 Dec 2025 21:27:33 +0800 Subject: Clean up mapper codes. --- src/base/xml/XmlNode.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/base/xml/XmlNode.cpp') diff --git a/src/base/xml/XmlNode.cpp b/src/base/xml/XmlNode.cpp index d3e7369b..a4ce9635 100644 --- a/src/base/xml/XmlNode.cpp +++ b/src/base/xml/XmlNode.cpp @@ -5,25 +5,27 @@ namespace cru::xml { XmlElementNode* XmlNode::AsElement() { - return static_cast(this); + return IsElementNode() ? static_cast(this) : nullptr; } -XmlTextNode* XmlNode::AsText() { return static_cast(this); } +XmlTextNode* XmlNode::AsText() { + return IsTextNode() ? static_cast(this) : nullptr; +} XmlCommentNode* XmlNode::AsComment() { - return static_cast(this); + return IsCommentNode() ? static_cast(this) : nullptr; } const XmlElementNode* XmlNode::AsElement() const { - return static_cast(this); + return IsElementNode() ? static_cast(this) : nullptr; } const XmlTextNode* XmlNode::AsText() const { - return static_cast(this); + return IsTextNode() ? static_cast(this) : nullptr; } const XmlCommentNode* XmlNode::AsComment() const { - return static_cast(this); + return IsCommentNode() ? static_cast(this) : nullptr; } XmlElementNode::~XmlElementNode() { -- cgit v1.2.3