Module iodyn::archive_stack [] [src]

Incremental High-gauge Archive Stack

This implementation is incremental, meaning it is articulated for use with Adapton. The user provides names with each archive operation that are then used to memoize operations over the archived data.

  • a stack implemented with both persistent and mutable components
  • insert in low-const O(1) - rare reallocations
  • copy in high-const O(1) - short array copy then pointer

The archive stack is implemented as a persistent stack of vectors. Use archive() to save the current vector as the first entry in the persistent linked list.

Structs

AStack

Incremental Archive Stack

AtHead

Marker type for interpreting the stack as a sequence.

AtTail

Marker type for interpreting the stack as a sequence.

Iter

Iterator for elements of a archive stack