From 683c42ef52cabc066c666790646879fb681f3e74 Mon Sep 17 00:00:00 2001 From: Daniel Stevens Date: Sat, 1 Mar 2025 07:21:29 -0700 Subject: [PATCH] Move `XmlVisitor` implementation to source file This creates out-of-line virtual method definitions. This removes an instance of the Clang warning `-Wweak-vtables`. --- NAS2D/Xml/XmlVisitor.cpp | 46 ++++++++++++++++++++++++++++++++++++++++ NAS2D/Xml/XmlVisitor.h | 14 ++++++------ 2 files changed, 53 insertions(+), 7 deletions(-) create mode 100644 NAS2D/Xml/XmlVisitor.cpp diff --git a/NAS2D/Xml/XmlVisitor.cpp b/NAS2D/Xml/XmlVisitor.cpp new file mode 100644 index 000000000..268646c8a --- /dev/null +++ b/NAS2D/Xml/XmlVisitor.cpp @@ -0,0 +1,46 @@ +#include "XmlVisitor.h" + + +using namespace NAS2D::Xml; + + +bool XmlVisitor::visitEnter(const XmlDocument&) +{ + return true; +} + + +bool XmlVisitor::visitExit(const XmlDocument&) +{ + return true; +} + + +bool XmlVisitor::visitEnter(const XmlElement&, const XmlAttribute*) +{ + return true; +} + + +bool XmlVisitor::visitExit(const XmlElement&) +{ + return true; +} + + +bool XmlVisitor::visit(const XmlText&) +{ + return true; +} + + +bool XmlVisitor::visit(const XmlComment&) +{ + return true; +} + + +bool XmlVisitor::visit(const XmlUnknown&) +{ + return true; +} diff --git a/NAS2D/Xml/XmlVisitor.h b/NAS2D/Xml/XmlVisitor.h index 2be73b69a..ed1872ff2 100644 --- a/NAS2D/Xml/XmlVisitor.h +++ b/NAS2D/Xml/XmlVisitor.h @@ -43,15 +43,15 @@ class XmlVisitor public: virtual ~XmlVisitor() = default; - virtual bool visitEnter(const XmlDocument&) { return true; } - virtual bool visitExit(const XmlDocument&) { return true; } + virtual bool visitEnter(const XmlDocument&); + virtual bool visitExit(const XmlDocument&); - virtual bool visitEnter(const XmlElement&, const XmlAttribute*) { return true; } - virtual bool visitExit(const XmlElement&) { return true; } + virtual bool visitEnter(const XmlElement&, const XmlAttribute*); + virtual bool visitExit(const XmlElement&); - virtual bool visit(const XmlText&) { return true; } - virtual bool visit(const XmlComment&) { return true; } - virtual bool visit(const XmlUnknown&) { return true; } + virtual bool visit(const XmlText&); + virtual bool visit(const XmlComment&); + virtual bool visit(const XmlUnknown&); }; } // namespace Xml