3 #ifndef LEMON_CLEARABLE_GRAPH_EXTENDER_H
 
     4 #define LEMON_CLEARABLE_GRAPH_EXTENDER_H
 
     6 #include <lemon/invalid.h>
 
    11   template <typename _Base> 
 
    12   class ClearableGraphExtender : public _Base {
 
    15     typedef ClearableGraphExtender Graph;
 
    17     typedef typename Parent::Node Node;
 
    18     typedef typename Parent::Edge Edge;
 
    21       Parent::getNotifier(Node()).clear();
 
    22       Parent::getNotifier(Edge()).clear();
 
    28   template <typename _Base> 
 
    29   class ClearableUndirGraphExtender : public _Base {
 
    32     typedef ClearableUndirGraphExtender Graph;
 
    34     typedef typename Parent::Node Node;
 
    35     typedef typename Parent::UndirEdge UndirEdge;
 
    36     typedef typename Parent::Edge Edge;
 
    39       Parent::getNotifier(Node()).clear();
 
    40       Parent::getNotifier(UndirEdge()).clear();
 
    41       Parent::getNotifier(Edge()).clear();