Commit Graph

  • c131f520f4 Add crate doc front-page, and update readme docs warrence 2026-07-14 20:01:08 +02:00
  • b6c27ea605 Merge branch 'main' into docs warrence 2026-07-14 09:54:17 +02:00
  • 5b30151010 Merge pull request 'Minor fixes' (#5) from fixes-minor into main main 0.2.2 warrence 2026-07-13 10:58:50 +02:00
  • 2f549cc506 Update package version warrence 2026-07-13 10:49:25 +02:00
  • cf31ee2f01 Replace VertexMap/EdgeMap.len with capacity warrence 2026-07-13 10:48:16 +02:00
  • e58261ba47 Add BfsImplResult and DfsImplResult as named return structs warrence 2026-07-10 13:12:30 +02:00
  • fb9dfe8280 Renamed len() to capacity() in EntityMap, VertexMap, and EdgeMap fixes-major warrence 2026-07-10 11:58:45 +02:00
  • 818b37ec15 Add linter warning for missing docs warrence 2026-07-10 10:18:39 +02:00
  • dd0399dcdd Merge pull request 'Add prelude' (#4) from feature/prelude into main 0.2.1 warrence 2026-07-07 11:45:41 +02:00
  • 3c4391ac1d Update package version warrence 2026-07-07 11:44:57 +02:00
  • bbd9506bbc Add prelude module for common traits warrence 2026-07-07 11:44:17 +02:00
  • 4b3586b1eb Merge pull request 'Type additions and renames' (#3) from dev into main 0.2.0 warrence 2026-07-06 19:13:13 +02:00
  • c8dda39b98 Update package version warrence 2026-07-06 18:50:22 +02:00
  • 1446103d34 Add concrete type aliases of VertexMap and EdgeMap for Graph and AppendGraph warrence 2026-07-06 18:49:02 +02:00
  • 266dee783b Rename append_graph::Incidence to Edge to unify public naming warrence 2026-07-06 17:52:42 +02:00
  • e3a24894f6 Changed graph::Vertex and graph::Edge to be public to simplify Graph usage warrence 2026-07-06 17:51:15 +02:00
  • 6d2d1de8ea Hide testing macros from docs warrence 2026-07-03 22:49:14 +02:00
  • 2d400628f7 Re-publish AppendGraph and Graph in models warrence 2026-07-03 21:49:28 +02:00
  • 6a0c426c77 Rename find_path* algorithms to dfs_find_path* warrence 2026-07-03 21:43:55 +02:00
  • 4f08eb453f Merge pull request 'Initial release' (#1) from dev into main 0.1.0 warrence 2026-06-30 10:26:49 +02:00
  • db79da7301 Update cargo package metadata warrence 2026-06-30 10:23:27 +02:00
  • 6b742a53f5 Update cargo package metadata warrence 2026-06-30 10:21:05 +02:00
  • fb64e370dc Update readme and license information warrence 2026-06-29 21:04:48 +02:00
  • 21c95b4796 Add find_path algorithm and tests warrence 2026-06-29 21:03:10 +02:00
  • f009a86f1e Add GraphTopology.incidence_cursor() for certain use-cases where the iterator is problematic warrence 2026-06-26 23:36:41 +02:00
  • c197766229 Fix formatting warrence 2026-06-26 15:38:49 +02:00
  • c147ed4974 Update breadth-first search tests warrence 2026-06-26 15:35:23 +02:00
  • 135f256141 Add depth-first search algorithms and tests warrence 2026-06-26 15:34:42 +02:00
  • 91ac925417 Add breadth-first search algorithms and tests warrence 2026-06-25 21:54:49 +02:00
  • e299012948 Move the disconnected test graph to the more general graph_topology_test_fixtures macro warrence 2026-06-25 20:17:55 +02:00
  • 3adfb4b9eb Add todo for custom weight type for Dijkstra's algorithm warrence 2026-05-18 16:15:46 +02:00
  • ce692cb0b2 Add trait imports to test functions, making macros self-contained warrence 2026-05-18 15:55:56 +02:00
  • 465a383683 Add tests for Dijkstra's algorithm with edge weights warrence 2026-05-18 12:48:12 +02:00
  • 25b5d7864a Refactor Dijkstra test assertions into new functions warrence 2026-05-18 12:45:28 +02:00
  • 13daf20e1c Update test names for Dijkstra's algorithm to match the tested functions warrence 2026-05-13 14:04:07 +02:00
  • 600664acb6 Update tests for Dijkstra's algorithm to test both graph models warrence 2026-05-13 14:02:07 +02:00
  • e479074151 Remove todo, proposed change would not affect callers warrence 2026-05-13 12:18:27 +02:00
  • aaa1b34db3 Add todo that was accidentally removed warrence 2026-05-13 12:16:10 +02:00
  • f862ac55ec Add GraphTopology::incident_edges() and tests warrence 2026-05-13 10:59:38 +02:00
  • 384dca2d20 Fix inconsistent local var name in test function warrence 2026-05-13 10:58:47 +02:00
  • 340fde2133 Add Graph::raw_incidences() iterator as a wrapper for step_incidence() warrence 2026-05-13 10:32:37 +02:00
  • 6191def324 Fix format warrence 2026-05-13 10:30:36 +02:00
  • ff148532ab Move maps tests to integration tests warrence 2026-05-12 18:32:45 +02:00
  • f1d5ccafd2 Add len() for VertexMap and EdgeMap warrence 2026-05-12 18:25:22 +02:00
  • be63527478 Add incident vertices to edges return value in make_test_graph() fixture warrence 2026-05-12 13:55:04 +02:00
  • ac688b4fc0 Extracted some assert code for GraphTopology::incidences into new fn warrence 2026-05-12 13:39:13 +02:00
  • f45fc98afc Add GraphTopology::incident_vertices and tests warrence 2026-05-12 13:37:27 +02:00
  • 85e25ef0ca Refactor Graph iterator structs into private method used with std::iter::from_fn() warrence 2026-05-08 20:48:43 +02:00
  • 2eb054eb0c Refactor AppendGraph iterators into one RawIncidenceIterator warrence 2026-05-08 20:40:20 +02:00
  • 0f5f0d67d2 Update Dijkstra's to use incidences instead of neighbors, and with it custom edge weights warrence 2026-05-08 13:16:23 +02:00
  • 0bcd270d12 Add GraphTopology::incidences(), update and add related tests warrence 2026-05-08 13:12:23 +02:00
  • d3fcd690a5 Remove deprecated From<Vertex> for usize implementation warrence 2026-05-08 12:57:16 +02:00
  • 4e47573290 Renamed the private graph iterators to attune for upcoming changes warrence 2026-05-07 18:01:16 +02:00
  • a7be995e34 Change "neighbor" terminology to "adjacent vertex" throughout the code warrence 2026-05-07 17:34:20 +02:00
  • 726e7691ea Add weight parameter for Dijkstra's algorithm, add unweighted variants (unused) warrence 2026-05-07 17:15:34 +02:00
  • 6fe3acb306 Add EdgeMap and private generic EntityMap, update tests warrence 2026-05-07 16:03:17 +02:00
  • e074fdf944 Move edge_count() in method order warrence 2026-05-07 11:38:15 +02:00
  • 016cece626 Update VertexMap tests to validate both graph models warrence 2026-05-07 00:12:06 +02:00
  • 7f91743b02 Add VertexMap tests for Graph (vertex deletion) warrence 2026-05-06 23:37:48 +02:00
  • 166b91cdd2 Update Dijkstra's algorithm to use VertexMap warrence 2026-05-06 20:28:53 +02:00
  • f40c03b113 Add VertexMap to attach data to vertices warrence 2026-05-06 20:28:00 +02:00
  • 6e9867a65e Add GraphTopology::edges() and tests warrence 2026-05-05 22:54:33 +02:00
  • c589095737 Add test for GraphTopology::vertices() after delete warrence 2026-05-05 22:52:07 +02:00
  • 18245b9955 Add Copy and Eq traits to GraphTopology::Edge warrence 2026-05-05 22:37:32 +02:00
  • feaca335b1 Add loops and multi-edges to the test graph, fix neighbors() test warrence 2026-05-05 19:21:48 +02:00
  • 8324f93ebd Add graph topology test helper macros to deduplicate test code warrence 2026-04-30 17:41:53 +02:00
  • 09c5850ff3 Add Graph::delete_vertex() implementation warrence 2026-04-29 20:50:19 +02:00
  • b3dc0ea666 Add test for Graph vertex deletion with loop warrence 2026-04-29 20:49:34 +02:00
  • 5b0d6ca1ad Fix Graph::delete_edge() for paired index with loops warrence 2026-04-29 18:24:10 +02:00
  • 2793f8af8a Add Graph::delete_edge() implementation warrence 2026-04-28 17:39:32 +02:00
  • ceedea6a0f Fix formatting warrence 2026-04-28 17:38:41 +02:00
  • 8e0b3325f5 Update and adds tests for Graph edge deletion warrence 2026-04-28 17:36:38 +02:00
  • f075501828 Add comments for AppendGraph and Graph add_incidence() warrence 2026-04-28 17:35:00 +02:00
  • 0ae4d486cb Add and update todos warrence 2026-04-28 17:29:54 +02:00
  • a8168b35e4 Add unit tests for GraphTopologyDeletion for Graph warrence 2026-04-23 22:50:11 +02:00
  • 0a30307a0d Update todos warrence 2026-04-23 22:49:12 +02:00
  • 37a911dce0 Change GraphTopology implementation for Graph with generational arena warrence 2026-04-23 18:25:23 +02:00
  • 67e16f50cd Fix same issues in Graph draft as well warrence 2026-04-23 18:23:54 +02:00
  • 02cd1a0dea Fix several minor issues in AppendGraph::are_adjacent(), unit tests, and formatting warrence 2026-04-23 18:18:36 +02:00
  • 6180786e33 Fix AppendGraph unit tests warrence 2026-04-23 18:13:10 +02:00
  • eabde7d635 Add Default implementation for AppendGraph warrence 2026-04-23 18:10:43 +02:00
  • b54800c1be Add new GraphTopologyDeletion trait for Graph to implement warrence 2026-04-22 16:33:33 +02:00
  • 8126352c9b Add Graph as a straight copy of AppendGraph warrence 2026-04-22 16:33:05 +02:00
  • d0cbebcae0 Fix formatting warrence 2026-04-22 16:32:17 +02:00
  • ee26b7a3e0 Move AppendGraph to its own module warrence 2026-04-22 16:31:17 +02:00
  • a939f9b889 Add Dijkstra variant without returning predecessors warrence 2026-04-22 15:50:45 +02:00
  • a250bde626 Add DijkstraResult return type instead of unnamed tuple warrence 2026-04-22 14:49:07 +02:00
  • 41f2332735 Add test for add_edge() return value warrence 2026-04-22 14:36:41 +02:00
  • ab830ed221 Rename Graph to AppendGraph for future other graph models warrence 2026-04-22 14:31:11 +02:00
  • 9088dd4683 Add edge return type to GraphTopology::add_edge() warrence 2026-04-22 14:28:21 +02:00
  • da9ba7b0ad Add GraphTopology trait and use it to interface graph model with algorithm warrence 2026-04-22 14:26:35 +02:00
  • 489ed6d506 Combine next_incidences and incidence_vertices of Graph into one, and rename incidence_headers to vertices warrence 2026-03-19 21:21:52 +01:00
  • c5a0f2a3f6 Add tests for loops and multiple edges warrence 2025-11-03 14:03:21 +01:00
  • 3565b6b548 Remove pub from structs and fields that should have been private warrence 2025-10-25 01:23:05 +02:00
  • 5ad480b379 Add tests for Dijkstra's algorithm on trivial graphs warrence 2025-10-25 01:15:16 +02:00
  • 64d0302d64 Update Dijkstra's algorithm to use Graph::neighbors() iterator warrence 2025-10-25 01:03:02 +02:00
  • 149db22fe8 Add todo warrence 2025-10-25 00:57:02 +02:00
  • 761920b2c0 Update Graph::are_adjacent() to use neighbors() iterator warrence 2025-10-25 00:56:24 +02:00
  • 50f3a150bb Add tests for some trivial graphs warrence 2025-10-25 00:51:48 +02:00
  • 6ff02f8c67 Update vertex iterator tests warrence 2025-10-25 00:41:08 +02:00