BIND 10 trac2750, updated. 4798d92c50c4b6ec09931646f1ba823882b268d2 [2750] Re-arrange find() methods so that protos come before uses

BIND 10 source code commits bind10-changes at lists.isc.org
Fri Aug 30 05:40:00 UTC 2013


The branch, trac2750 has been updated
       via  4798d92c50c4b6ec09931646f1ba823882b268d2 (commit)
      from  8829d940017a15fc738f2ebf6dfb3c8da61c54cc (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 4798d92c50c4b6ec09931646f1ba823882b268d2
Author: Mukund Sivaraman <muks at isc.org>
Date:   Fri Aug 30 11:03:59 2013 +0530

    [2750] Re-arrange find() methods so that protos come before uses

-----------------------------------------------------------------------

Summary of changes:
 src/lib/datasrc/memory/domaintree.h |  179 +++++++++++++++++++----------------
 1 file changed, 96 insertions(+), 83 deletions(-)

-----------------------------------------------------------------------
diff --git a/src/lib/datasrc/memory/domaintree.h b/src/lib/datasrc/memory/domaintree.h
index 695e802..5e7f725 100644
--- a/src/lib/datasrc/memory/domaintree.h
+++ b/src/lib/datasrc/memory/domaintree.h
@@ -1343,100 +1343,23 @@ private:
     /// \brief Static helper function used by const and non-const
     /// variants of find() below
     template <typename TT, typename TTN>
-    static Result findImpl(TT* tree,
-                           const isc::dns::Name& name,
-                           TTN** node)
-    {
-        DomainTreeNodeChain<T> node_path;
-        const isc::dns::LabelSequence ls(name);
-        return (tree->find<void*>(ls, node, node_path, NULL, NULL));
-    }
+    static Result findImpl(TT* tree, const isc::dns::Name& name, TTN** node);
 
     /// \brief Static helper function used by const and non-const
     /// variants of find() below
     template <typename TT, typename TTN>
-    static Result findImpl(TT* tree,
-                           const isc::dns::Name& name,
-                           TTN** node,
-                           DomainTreeNodeChain<T>& node_path)
-    {
-        const isc::dns::LabelSequence ls(name);
-        return (tree->find<void*>(ls, node, node_path, NULL, NULL));
-    }
+    static Result findImpl(TT* tree, const isc::dns::Name& name,
+                           TTN** node, DomainTreeNodeChain<T>& node_path);
 
     /// \brief Static helper function used by const and non-const
     /// variants of find() below
     template <typename TT, typename TTN, typename CBARG>
-    static Result findImpl(TT* tree,
-                           const isc::dns::Name& name,
-                           TTN** node,
-                           DomainTreeNodeChain<T>& node_path,
+    static Result findImpl(TT* tree, const isc::dns::Name& name,
+                           TTN** node, DomainTreeNodeChain<T>& node_path,
                            bool (*callback)(const DomainTreeNode<T>&, CBARG),
-                           CBARG callback_arg)
-    {
-        const isc::dns::LabelSequence ls(name);
-        return (tree->find(ls, node, node_path, callback, callback_arg));
-    }
+                           CBARG callback_arg);
 
 public:
-    /// \brief Simple find
-    ///
-    /// Acts as described in the \ref find section.
-    Result find(const isc::dns::Name& name,
-                DomainTreeNode<T>** node) {
-        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
-                (this, name, node));
-    }
-
-    /// \brief Simple find (const variant)
-    Result find(const isc::dns::Name& name,
-                const DomainTreeNode<T>** node) const {
-        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
-                (this, name, node));
-    }
-
-    /// \brief Simple find, with node_path tracking
-    ///
-    /// Acts as described in the \ref find section.
-    Result find(const isc::dns::Name& name, DomainTreeNode<T>** node,
-                DomainTreeNodeChain<T>& node_path)
-    {
-        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
-                (this, name, node, node_path));
-    }
-
-    /// \brief Simple find, with node_path tracking (const variant)
-    Result find(const isc::dns::Name& name, const DomainTreeNode<T>** node,
-                DomainTreeNodeChain<T>& node_path) const
-    {
-        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
-                (this, name, node, node_path));
-    }
-
-    /// \brief Simple find with callback
-    template <typename CBARG>
-    Result find(const isc::dns::Name& name,
-                DomainTreeNode<T>** node,
-                DomainTreeNodeChain<T>& node_path,
-                bool (*callback)(const DomainTreeNode<T>&, CBARG),
-                CBARG callback_arg)
-    {
-        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
-                (this, name, node, node_path, callback, callback_arg));
-    }
-
-    /// \brief Simple find with callback (const variant)
-    template <typename CBARG>
-    Result find(const isc::dns::Name& name,
-                const DomainTreeNode<T>** node,
-                DomainTreeNodeChain<T>& node_path,
-                bool (*callback)(const DomainTreeNode<T>&, CBARG),
-                CBARG callback_arg) const
-    {
-        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
-                (this, name, node, node_path, callback, callback_arg));
-    }
-
     /// \brief Find with callback and node chain
     /// \anchor callback
     ///
@@ -1525,6 +1448,65 @@ public:
                 DomainTreeNodeChain<T>& node_path,
                 bool (*callback)(const DomainTreeNode<T>&, CBARG),
                 CBARG callback_arg) const;
+
+    /// \brief Simple find
+    ///
+    /// Acts as described in the \ref find section.
+    Result find(const isc::dns::Name& name,
+                DomainTreeNode<T>** node) {
+        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
+                (this, name, node));
+    }
+
+    /// \brief Simple find (const variant)
+    Result find(const isc::dns::Name& name,
+                const DomainTreeNode<T>** node) const {
+        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
+                (this, name, node));
+    }
+
+    /// \brief Simple find, with node_path tracking
+    ///
+    /// Acts as described in the \ref find section.
+    Result find(const isc::dns::Name& name, DomainTreeNode<T>** node,
+                DomainTreeNodeChain<T>& node_path)
+    {
+        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
+                (this, name, node, node_path));
+    }
+
+    /// \brief Simple find, with node_path tracking (const variant)
+    Result find(const isc::dns::Name& name, const DomainTreeNode<T>** node,
+                DomainTreeNodeChain<T>& node_path) const
+    {
+        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
+                (this, name, node, node_path));
+    }
+
+    /// \brief Simple find with callback
+    template <typename CBARG>
+    Result find(const isc::dns::Name& name,
+                DomainTreeNode<T>** node,
+                DomainTreeNodeChain<T>& node_path,
+                bool (*callback)(const DomainTreeNode<T>&, CBARG),
+                CBARG callback_arg)
+    {
+        return (findImpl<DomainTree<T>, DomainTreeNode<T> >
+                (this, name, node, node_path, callback, callback_arg));
+    }
+
+    /// \brief Simple find with callback (const variant)
+    template <typename CBARG>
+    Result find(const isc::dns::Name& name,
+                const DomainTreeNode<T>** node,
+                DomainTreeNodeChain<T>& node_path,
+                bool (*callback)(const DomainTreeNode<T>&, CBARG),
+                CBARG callback_arg) const
+    {
+        return (findImpl<const DomainTree<T>, const DomainTreeNode<T> >
+                (this, name, node, node_path, callback, callback_arg));
+    }
+
     //@}
 
     /// \brief return the next bigger node in DNSSEC order from a given node
@@ -1844,6 +1826,37 @@ DomainTree<T>::deleteHelper(util::MemorySegment& mem_sgmt,
 }
 
 template <typename T>
+template <typename TT, typename TTN>
+typename DomainTree<T>::Result
+DomainTree<T>::findImpl(TT* tree, const isc::dns::Name& name, TTN** node)
+{
+    DomainTreeNodeChain<T> node_path;
+    return (tree->find<void*>(name, node, node_path, NULL, NULL));
+}
+
+template <typename T>
+template <typename TT, typename TTN>
+typename DomainTree<T>::Result
+DomainTree<T>::findImpl(TT* tree, const isc::dns::Name& name,
+                        TTN** node, DomainTreeNodeChain<T>& node_path)
+{
+    const isc::dns::LabelSequence ls(name);
+    return (tree->find<void*>(ls, node, node_path, NULL, NULL));
+}
+
+template <typename T>
+template <typename TT, typename TTN, typename CBARG>
+typename DomainTree<T>::Result
+DomainTree<T>::findImpl(TT* tree, const isc::dns::Name& name,
+                        TTN** node, DomainTreeNodeChain<T>& node_path,
+                        bool (*callback)(const DomainTreeNode<T>&, CBARG),
+                        CBARG callback_arg)
+{
+    const isc::dns::LabelSequence ls(name);
+    return (tree->find(ls, node, node_path, callback, callback_arg));
+}
+
+template <typename T>
 template <typename TT, typename TTN, typename CBARG>
 typename DomainTree<T>::Result
 DomainTree<T>::findImpl(TT* tree,



More information about the bind10-changes mailing list