|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
These concepts define the interface contracts for Aleph-w graph iterators.
Concepts | |
| concept | BasicGraphIterator |
| Concept for basic graph iterators. | |
| concept | ResettableGraphIterator |
| Concept for resettable graph iterators. | |
| concept | GraphNodeIterator |
| Concept for graph node iterators. | |
| concept | GraphArcIterator |
| Concept for graph arc iterators. | |
| concept | NodeArcIterator |
| Concept for node adjacency iterators. | |
These concepts define the interface contracts for Aleph-w graph iterators.
They provide:
BasicGraphIterator <-- Core: has_curr(), next(), get_curr()
|
+-- ResettableGraphIterator <-- Adds: reset_first()
|
+-- GraphNodeIterator<Node> <-- get_curr() returns Node*
|
+-- GraphArcIterator<Arc> <-- get_curr() returns Arc*
|
+-- NodeArcIterator<Node,Arc> <-- Adds: get_tgt_node()
| Iterator Type | BasicGraphIterator | GraphNodeIterator | GraphArcIterator | NodeArcIterator |
|---|---|---|---|---|
| GT::Node_Iterator | Yes | Yes | - | - |
| GT::Arc_Iterator | Yes | - | Yes | - |
| GT::Node_Arc_Iterator | Yes | - | Yes | Yes |
This applies to all graph types: List_Graph, List_SGraph, Array_Graph, and their directed variants.