Age | Commit message (Collapse) | Author |
|
This adds a more complex testcase to the aga module. This one is a trie
(basically a radix tree for strings).
It demonstrates different ways of constructing edge information from an
internal representation than the existing testcases. Importantly, it also
demonstrates aga's ability to cope with the edge function lazily
constructing nodes on the fly.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
|
The aga algorithms can't be run concurrently, because they store state
information in the aga_node structures. However, they are supposed to
detect an attempt to re-enter and safely report an error. This adds a
testcase for this.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
|
This implements breadth first search for the abstract graph algorithms
module.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
|
This implements depth first search for the abstract graph algorithms
module.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
|
This adds code for a number of example graphs for use in tests of the aga
module. They also demonstrate several different ways of constructing
graphs using the aga callbacks.
It adds one actual testcase, which just verifies that the example graph
look like what they're supposed to. Specifically it computes a set of
adjacency lists for the example graphs from the callback code, then
compares that to a canned example of what it should be.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|
|
New module.
This patch just adds the module, with some generic helper routines, no
actual algorithms are implemented yet.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
|