From 434c4a4d41bfc4cd3803a0af8525fc25a46a3668 Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Wed, 13 Mar 2019 21:24:47 -0700 Subject: [PATCH 1/2] Remove contrib folder This change removes contrib folder since it doesn't seem very useful; Natvis scripts can and should go to scripts/ along with project files. foreach.hpp is supporting a severely outdated BOOST_FOREACH construct; in C++11 ranged for loop can be used with xml_node::children/attributes, and BOOST_FOREACH can work with these as well. foreach.hpp was also accidentally licensed as public domain which isn't very helpful when the actual library is MIT. We could fix the license but it seems better to just remove it. Fixes #264. --- contrib/foreach.hpp | 63 ------------------- {contrib => scripts}/natvis/pugixml.natvis | 0 .../natvis/pugixml_compact.natvis | 0 3 files changed, 63 deletions(-) delete mode 100644 contrib/foreach.hpp rename {contrib => scripts}/natvis/pugixml.natvis (100%) rename {contrib => scripts}/natvis/pugixml_compact.natvis (100%) diff --git a/contrib/foreach.hpp b/contrib/foreach.hpp deleted file mode 100644 index c423151..0000000 --- a/contrib/foreach.hpp +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Boost.Foreach support for pugixml classes. - * This file is provided to the public domain. - * Written by Arseny Kapoulkine (arseny.kapoulkine@gmail.com) - */ - -#ifndef HEADER_PUGIXML_FOREACH_HPP -#define HEADER_PUGIXML_FOREACH_HPP - -#include - -#include "pugixml.hpp" - -/* - * These types add support for BOOST_FOREACH macro to xml_node and xml_document classes (child iteration only). - * Example usage: - * BOOST_FOREACH(xml_node n, doc) {} - */ - -namespace boost -{ - template<> struct range_mutable_iterator - { - typedef pugi::xml_node::iterator type; - }; - - template<> struct range_const_iterator - { - typedef pugi::xml_node::iterator type; - }; - - template<> struct range_mutable_iterator - { - typedef pugi::xml_document::iterator type; - }; - - template<> struct range_const_iterator - { - typedef pugi::xml_document::iterator type; - }; -} - -/* - * These types add support for BOOST_FOREACH macro to xml_node and xml_document classes (child/attribute iteration). - * Example usage: - * BOOST_FOREACH(xml_node n, children(doc)) {} - * BOOST_FOREACH(xml_node n, attributes(doc)) {} - */ - -namespace pugi -{ - inline xml_object_range children(const pugi::xml_node& node) - { - return node.children(); - } - - inline xml_object_range attributes(const pugi::xml_node& node) - { - return node.attributes(); - } -} - -#endif diff --git a/contrib/natvis/pugixml.natvis b/scripts/natvis/pugixml.natvis similarity index 100% rename from contrib/natvis/pugixml.natvis rename to scripts/natvis/pugixml.natvis diff --git a/contrib/natvis/pugixml_compact.natvis b/scripts/natvis/pugixml_compact.natvis similarity index 100% rename from contrib/natvis/pugixml_compact.natvis rename to scripts/natvis/pugixml_compact.natvis From 29f3177d10e3f994d008ea7eac4b41ad333da073 Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Wed, 13 Mar 2019 23:17:23 -0700 Subject: [PATCH 2/2] Remove contrib from Makefile and readme.txt --- Makefile | 2 +- readme.txt | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 4632407..3e117e9 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ SOURCES=src/pugixml.cpp $(filter-out tests/fuzz_%,$(wildcard tests/*.cpp)) EXECUTABLE=$(BUILD)/test VERSION=$(shell sed -n 's/.*version \(.*\).*/\1/p' src/pugiconfig.hpp) -RELEASE=$(filter-out scripts/archive.py docs/%.adoc,$(shell git ls-files contrib docs scripts src CMakeLists.txt readme.txt)) +RELEASE=$(filter-out scripts/archive.py docs/%.adoc,$(shell git ls-files docs scripts src CMakeLists.txt readme.txt)) CXXFLAGS=-g -Wall -Wextra -Werror -pedantic -Wundef -Wshadow -Wcast-align -Wcast-qual -Wold-style-cast -Wdouble-promotion LDFLAGS= diff --git a/readme.txt b/readme.txt index 587186d..478e5a8 100644 --- a/readme.txt +++ b/readme.txt @@ -13,8 +13,6 @@ automatically during parsing/saving). The distribution contains the following folders: - contrib/ - various contributions to pugixml - docs/ - documentation docs/samples - pugixml usage examples docs/quickstart.html - quick start guide