Closed CAD97 closed 4 years ago
TL;DR: this is even messier than #32 but has a better chance at improving memory usage at least.
I put TODOs inline for where I mentioned maybe switching to direct FAM indexing. I also added a silly workaround for the reverse iteration to restore functionality without changing the interface.
I hooked this up to ra and got
test result: FAILED. 2 passed; 198 failed; 0 ignored; 0 measured; 0 filtered out
so something's messed up, obviously.
I don't really have the resources to debug this, and the boxed/deduped tokens approach will hopefully make this unnecessary, so I'm going to let this PR sit idle for a bit while I try out that approach.
Closing this as the approach of boxing tokens makes this code much simpler and less error-prone.
The layout of a GreenNode:
ArcGreenNode
is required so thatDrop
does the right thing forGreenNode
.GreenNode
is currentlySized
according torustc
, and should probably be made?Sized
via making the tail anextern type
once that is stable.The code quality is very proof-of-concept. I'm fairly confident it does the right thing, but it could use some review and proper organization before production use.