From f716a9fe6455d39eef01e718aae68dae61c19704 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 4 Jun 2026 05:35:26 -0500 Subject: Adding metadata --- dev-cpp/tree/files/3.18-add-missing-insert.patch | 82 ------------------------ 1 file changed, 82 deletions(-) delete mode 100644 dev-cpp/tree/files/3.18-add-missing-insert.patch (limited to 'dev-cpp/tree/files/3.18-add-missing-insert.patch') diff --git a/dev-cpp/tree/files/3.18-add-missing-insert.patch b/dev-cpp/tree/files/3.18-add-missing-insert.patch deleted file mode 100644 index adf3776448ac..000000000000 --- a/dev-cpp/tree/files/3.18-add-missing-insert.patch +++ /dev/null @@ -1,82 +0,0 @@ -https://github.com/kpeeters/tree.hh/commit/1bd1cd80cdcec2ba1c677ee0ef3766a9485d1d2f - -From: Kasper Peeters -Date: Fri, 17 Nov 2023 11:24:49 +0000 -Subject: [PATCH] Add a missing 'insert(sibling_iterators, T&&)'. Fixes issue - #24. - ---- - src/tree.hh | 39 +++++++++++++++++++++++++++++++++++---- - 1 file changed, 35 insertions(+), 4 deletions(-) - -diff --git a/src/tree.hh b/src/tree.hh -index 906cda1..d460165 100644 ---- a/src/tree.hh -+++ b/src/tree.hh -@@ -1,7 +1,7 @@ - - // STL-like templated tree class. - // --// Copyright (C) 2001-2020 Kasper Peeters -+// Copyright (C) 2001-2023 Kasper Peeters - // Distributed under the GNU General Public License version 3. - // - // Special permission to use tree.hh under the conditions of a -@@ -9,9 +9,8 @@ - - /** \mainpage tree.hh - \author Kasper Peeters -- \version 3.18 -- \date 13-Feb-2021 -- \see http://tree.phi-sci.com/ -+ \version 3.19 -+ \date 2023-11-17 - \see http://github.com/kpeeters/tree.hh/ - - The tree.hh library for C++ provides an STL-like container class -@@ -363,6 +362,7 @@ class tree { - template iter insert(iter position, T&& x); - /// Specialisation of previous member. - sibling_iterator insert(sibling_iterator position, const T& x); -+ sibling_iterator insert(sibling_iterator position, T&& x); - /// Insert node (with children) pointed to by subtree as previous sibling of node pointed to by position. - /// Does not change the subtree itself (use move_in or move_in_below for that). - template iter insert_subtree(iter position, const iterator_base& subtree); -@@ -1363,6 +1363,37 @@ typename tree::sibling_iterator tree -+typename tree::sibling_iterator tree::insert(sibling_iterator position, T&& x) -+ { -+ tree_node *tmp=std::allocator_traits::allocate(alloc_, 1, 0); -+ std::allocator_traits::construct(alloc_, tmp); -+ std::swap(tmp->data, x); // Move semantics -+ -+ tmp->first_child=0; -+ tmp->last_child=0; -+ -+ tmp->next_sibling=position.node; -+ if(position.node==0) { // iterator points to end of a subtree -+ tmp->parent=position.parent_; -+ tmp->prev_sibling=position.range_last(); -+ tmp->parent->last_child=tmp; -+ } -+ else { -+ tmp->parent=position.node->parent; -+ tmp->prev_sibling=position.node->prev_sibling; -+ position.node->prev_sibling=tmp; -+ } -+ -+ if(tmp->prev_sibling==0) { -+ if(tmp->parent) // when inserting nodes at the head, there is no parent -+ tmp->parent->first_child=tmp; -+ } -+ else -+ tmp->prev_sibling->next_sibling=tmp; -+ return tmp; -+ } -+ - template - template - iter tree::insert_after(iter position, const T& x) -- cgit v1.3