60719c4ecb
Simplify copyright dates in README to account for additional commits.
2025-01-10 09:35:31 -05:00
f93d871370
Update copyright dates in README
2025-01-10 09:34:19 -05:00
4878bf9d14
Remove dependency on the r4 crate.
2025-01-10 09:34:08 -05:00
bde18007b2
Version bump.
2025-01-10 09:29:39 -05:00
4abef5b294
Add missing MutNode.retain_reachable
and bump docs.
2025-01-10 09:29:39 -05:00
651ce5fd84
Tighten up mark-and-compact GC.
...
Now it is in-place and should take less space for at least some workloads. See
TODOs left behind for thoughts on future directions it may make sense to go in
for performance tuning.
This still needs better test coverage, but these code improvements should make
it clear that there are no obvious fundamental flaws to this approach.
2025-01-10 09:29:39 -05:00
d94fd76d94
Use MaybeUninit
instead of writing directly into uninitialized Vec
.
...
This addresses a precondition error which is caught in newer stdlib.
2025-01-10 09:29:39 -05:00
1fcff8f4eb
Hit it with the cargo fmt
bat.
2025-01-10 09:29:39 -05:00
d627b8b964
Accommodate clippy suggestions.
2025-01-10 09:29:39 -05:00
063fedd709
Small readability improvements to satisfy lints.
2025-01-10 09:29:39 -05:00
147e6828d7
Small improvements to doc comments.
2025-01-10 09:29:39 -05:00
f54651ec4d
Clean up some compilation warnings.
2025-01-10 09:29:39 -05:00
59e02dd89f
Use a type that can actually be named for parent and child iteration in View.
2019-07-30 17:01:32 -04:00
6df253c3cc
Fix formatting to be Markdown-friendly.
2019-07-25 22:02:03 -04:00
a35534da10
Bump README and change from org-mode to Markdown.
2019-07-25 22:01:36 -04:00
8af9689fc1
Version bump.
2019-07-25 21:53:40 -04:00
508d31f5b4
Further documentation bump.
2019-07-25 21:53:22 -04:00
112b6865de
Move mark & compact GC to top-level module.
2019-07-23 17:56:56 -04:00
650b240dc5
Big documentation bump. More to come.
2019-07-23 17:55:35 -04:00
889c4a6d00
Correct lifetime oversights that lead to unsafety in view.
...
Some cleanup, too.
2019-07-23 12:53:53 -04:00
e8faceb964
Syntactic cleanup to reduce linebreaks added by rustfmt.
2019-07-23 12:53:17 -04:00
983ca4ca45
Delete empty file.
2019-07-23 12:52:46 -04:00
74d972de59
PartialEq and Eq for EdgeRef/NodeRef.
2019-07-23 01:59:30 -04:00
ff9cdcb0b9
Debug impl for EdgeRef and NodeRef.
2019-07-23 01:45:35 -04:00
4252119879
Version bump for new APIs.
2019-07-23 01:12:29 -04:00
01497be3e8
Ditch AppendOnlyGraph, which was broken and unfixable.
2019-07-23 01:11:59 -04:00
154e49c9f0
Added the view module and a few basic tests.
2019-07-23 01:09:56 -04:00
50bdbb41a7
Improved error message
2019-07-22 12:02:50 -04:00
2bc8e47843
Flesh out AppendOnlyGraph with new append_edge method.
2019-07-17 20:26:25 -04:00
f54bd3ace0
AppendOnlyGraph.add_edge doesn't need &mut self.
2019-07-17 20:07:30 -04:00
8b2011d104
Impl Clone and Copy for nav traits.
2019-07-17 19:32:22 -04:00
2f63b80e36
Add AppendOnlyGraph, to allow safe appends without invalidating pointers.
2019-07-17 19:21:27 -04:00
bbb9be1ae6
Actually add rustfmt.toml.
2019-07-13 23:07:38 -04:00
072a28fa76
Set indentation correctly and run rustfmt on everything.
2019-07-13 23:07:09 -04:00
d6de8fb161
Update to Rust 2018 and use pub(crate)
for hidden APIs.
2019-07-13 22:38:17 -04:00
c1a24ff1a6
Use recently published version of symbol_table (now called symbol_map).
2016-09-08 22:02:58 -04:00
b937e22f50
Remove unused import.
2016-09-05 23:47:18 -04:00
e0d34f1f68
Use crossbeam's scoped threads instead of unsafe cast in test.
2016-05-04 14:42:00 -04:00
962768dfb4
Dead simple tests to ensure that Graph can be Send and Sync.
2016-05-01 20:41:14 -04:00
4935b8b646
Remove dead code.
2016-05-01 17:51:55 -04:00
7f8a4b3c0b
Switch to using symbol-table package instead of built-in StateNamespace.
2016-05-01 17:51:10 -04:00
8550af7562
Remove unused, obsoleted enum.
2016-05-01 16:11:45 -04:00
0e9c6a64ec
Recover vertex labels from node handles.
2016-04-17 17:19:18 -04:00
fc77c8824b
Method for temporarily borrowing a Node from a MutNode.
2016-04-17 15:59:34 -04:00
4b348c9bc6
New methods for adding parent edges to graph.
2016-04-17 14:17:12 -04:00
6ce69e5d12
New methods for adding child edges to graph.
2016-04-17 14:12:37 -04:00
f57667f410
Get rid of notion of unexpanded edge.
...
Make one to throw away.
Upon reflection, it is not necessary for the graph data structure itself
to support unexpanded edges. It is sufficient to mark on vertex or edge
data when expansion is needed.
2016-04-17 13:59:41 -04:00
1a5c88e687
Rename Arc->RawEdge. Add Ord & co. to RawEdge.
2016-04-13 23:05:46 -04:00
649203baad
Rename Vertex->RawVertex. Add Ord and PartialOrd to RawVertex.
2016-04-13 23:01:54 -04:00
9d3c123bdb
Rename StateId->VertexId, ArcId->EdgeId.
2016-04-13 22:58:26 -04:00