[Lemon-commits] [lemon_svn] deba: r2490 - hugo/trunk/lemon
Lemon SVN
svn at lemon.cs.elte.hu
Mon Nov 6 20:53:04 CET 2006
Author: deba
Date: Fri Jan 27 15:18:11 2006
New Revision: 2490
Modified:
hugo/trunk/lemon/traits.h
Log:
Add new ItemSetTraits for ANode and BNode
Modified: hugo/trunk/lemon/traits.h
==============================================================================
--- hugo/trunk/lemon/traits.h (original)
+++ hugo/trunk/lemon/traits.h Fri Jan 27 15:18:11 2006
@@ -93,6 +93,52 @@
};
+
+ template <typename _Graph>
+ class ItemSetTraits<_Graph, typename _Graph::ANode> {
+ public:
+
+ typedef _Graph Graph;
+
+ typedef typename Graph::ANode Item;
+ typedef typename Graph::ANodeIt ItemIt;
+
+ template <typename _Value>
+ class Map : public Graph::template ANodeMap<_Value> {
+ public:
+ typedef typename Graph::template ANodeMap<_Value> Parent;
+ typedef typename Parent::Value Value;
+
+ Map(const Graph& _graph) : Parent(_graph) {}
+ Map(const Graph& _graph, const Value& _value)
+ : Parent(_graph, _value) {}
+ };
+
+ };
+
+ template <typename _Graph>
+ class ItemSetTraits<_Graph, typename _Graph::BNode> {
+ public:
+
+ typedef _Graph Graph;
+
+ typedef typename Graph::BNode Item;
+ typedef typename Graph::BNodeIt ItemIt;
+
+ template <typename _Value>
+ class Map : public Graph::template BNodeMap<_Value> {
+ public:
+ typedef typename Graph::template BNodeMap<_Value> Parent;
+ typedef typename Parent::Value Value;
+
+ Map(const Graph& _graph) : Parent(_graph) {}
+ Map(const Graph& _graph, const Value& _value)
+ : Parent(_graph, _value) {}
+ };
+
+ };
+
+
template <typename Map, typename Enable = void>
struct MapTraits {
typedef False ReferenceMapTag;
More information about the Lemon-commits
mailing list