// -*- C++ -*- (c) 2009, 2012 Petr Rockai #include #ifndef DIVINE_GRAPH_POR_H #define DIVINE_GRAPH_POR_H namespace divine { namespace graph { template< typename G, typename St > struct NonPORGraph : graph::Transform< G > { typedef typename G::Node Node; typedef typename St::Vertex Vertex; typedef typename St::Handle Handle; void porExpansion( Vertex ) {} void porTransition( St &, Vertex, Vertex ) {} bool full( Vertex ) { return true; } template< typename Alloc, typename Yield > void fullexpand( Alloc, Yield, Vertex ) { } template< typename Algorithm > void _porEliminate( Algorithm & ) {} template< typename Domain, typename Alg > bool porEliminate( Domain &, Alg & ) { return false; } template< typename Table > bool porEliminateLocally( Table & ) { return false; } template< typename Alloc, typename Yield > void porExpand( Alloc, St&, Yield ) {} template< typename Alloc, typename Yield > void successors( Alloc alloc, Vertex st, Yield yield ) { this->base().successors( alloc, st.node(), yield ); } }; } } #endif