[ccan] [PATCH 0/7] Abstract Graph Algorithms

David Gibson david at gibson.dropbear.id.au
Sat Jul 25 20:50:05 AEST 2015


Changes in this posting

  * Callback functions can now use any pointer type for edges (instead
    of const void *) as long as they match
  * Added "agar" module with re-entrant versions of the aga algorithms
  * Renamed bfs_next() and dfs_next() to bfs_explore() and
    dfs_explore() since they don't operate quite like you'd expect an iterator to

David Gibson (7):
  aga: Abstract Graph Algorithms
  aga: Simple test graphs
  aga: Depth first search
  aga: Breadth first search
  aga: Testcase for attempt to run concurrent algorithms
  aga: Add lazytrie testcase
  agar: Re-entrant Abstract Graph Algorithms

 ccan/aga/LICENSE                       |    1 +
 ccan/aga/_info                         |   51 ++
 ccan/aga/aga.c                         |   93 +++
 ccan/aga/aga.h                         |  234 ++++++++
 ccan/aga/bfs.c                         |   94 +++
 ccan/aga/dfs.c                         |   94 +++
 ccan/aga/private.h                     |   10 +
 ccan/aga/test/api-adjacency.c          |   93 +++
 ccan/aga/test/api-bfs.c                |  104 ++++
 ccan/aga/test/api-concurrent.c         |   52 ++
 ccan/aga/test/api-dfs.c                |  104 ++++
 ccan/aga/test/api-lazytrie-words.txt   | 1000 ++++++++++++++++++++++++++++++++
 ccan/aga/test/api-lazytrie.c           |  211 +++++++
 ccan/aga/test/chain.c                  |   27 +
 ccan/aga/test/compile_fail-mismatch1.c |    6 +
 ccan/aga/test/compile_fail-mismatch2.c |    6 +
 ccan/aga/test/compile_fail-mismatch3.c |    6 +
 ccan/aga/test/compile_fail-mismatch4.c |    6 +
 ccan/aga/test/compile_ok.c             |   39 ++
 ccan/aga/test/error-graph.c            |   56 ++
 ccan/aga/test/full.c                   |   49 ++
 ccan/aga/test/grid.c                   |   84 +++
 ccan/aga/test/parallel.c               |   62 ++
 ccan/aga/test/simple-graph.c           |   11 +
 ccan/aga/test/simple-graph.h           |  217 +++++++
 ccan/aga/test/traversal1.c             |  121 ++++
 ccan/aga/test/trivial.c                |   39 ++
 ccan/agar/LICENSE                      |    1 +
 ccan/agar/_info                        |   48 ++
 ccan/agar/agar.c                       |  232 ++++++++
 ccan/agar/agar.h                       |   73 +++
 ccan/agar/test/api-adjacency.c         |   86 +++
 ccan/agar/test/api-bfs.c               |  106 ++++
 ccan/agar/test/api-dfs.c               |  106 ++++
 ccan/agar/test/chain.c                 |   30 +
 ccan/agar/test/error-graph.c           |   55 ++
 ccan/agar/test/full.c                  |   45 ++
 ccan/agar/test/grid.c                  |   81 +++
 ccan/agar/test/parallel.c              |   62 ++
 ccan/agar/test/simple-graphr.h         |  200 +++++++
 ccan/agar/test/traversal1.c            |  114 ++++
 ccan/agar/test/trivial.c               |   36 ++
 42 files changed, 4145 insertions(+)
 create mode 120000 ccan/aga/LICENSE
 create mode 100644 ccan/aga/_info
 create mode 100644 ccan/aga/aga.c
 create mode 100644 ccan/aga/aga.h
 create mode 100644 ccan/aga/bfs.c
 create mode 100644 ccan/aga/dfs.c
 create mode 100644 ccan/aga/private.h
 create mode 100644 ccan/aga/test/api-adjacency.c
 create mode 100644 ccan/aga/test/api-bfs.c
 create mode 100644 ccan/aga/test/api-concurrent.c
 create mode 100644 ccan/aga/test/api-dfs.c
 create mode 100644 ccan/aga/test/api-lazytrie-words.txt
 create mode 100644 ccan/aga/test/api-lazytrie.c
 create mode 100644 ccan/aga/test/chain.c
 create mode 100644 ccan/aga/test/compile_fail-mismatch1.c
 create mode 100644 ccan/aga/test/compile_fail-mismatch2.c
 create mode 100644 ccan/aga/test/compile_fail-mismatch3.c
 create mode 100644 ccan/aga/test/compile_fail-mismatch4.c
 create mode 100644 ccan/aga/test/compile_ok.c
 create mode 100644 ccan/aga/test/error-graph.c
 create mode 100644 ccan/aga/test/full.c
 create mode 100644 ccan/aga/test/grid.c
 create mode 100644 ccan/aga/test/parallel.c
 create mode 100644 ccan/aga/test/simple-graph.c
 create mode 100644 ccan/aga/test/simple-graph.h
 create mode 100644 ccan/aga/test/traversal1.c
 create mode 100644 ccan/aga/test/trivial.c
 create mode 120000 ccan/agar/LICENSE
 create mode 100644 ccan/agar/_info
 create mode 100644 ccan/agar/agar.c
 create mode 100644 ccan/agar/agar.h
 create mode 100644 ccan/agar/test/api-adjacency.c
 create mode 100644 ccan/agar/test/api-bfs.c
 create mode 100644 ccan/agar/test/api-dfs.c
 create mode 100644 ccan/agar/test/chain.c
 create mode 100644 ccan/agar/test/error-graph.c
 create mode 100644 ccan/agar/test/full.c
 create mode 100644 ccan/agar/test/grid.c
 create mode 100644 ccan/agar/test/parallel.c
 create mode 100644 ccan/agar/test/simple-graphr.h
 create mode 100644 ccan/agar/test/traversal1.c
 create mode 100644 ccan/agar/test/trivial.c

-- 
2.4.3



More information about the ccan mailing list