Module adapton::reflect::trace [] [src]

Gives effects and traces for cleaning and dirtying, the engine's internal DCG traversal/processing. By contrast, the enclosing module (reflect) only gives reflected versions of the DCG itself, not changes that the engine makes to it.

Structs

Edge

An edge in the DCG, representing an effect of the incremental program.

Trace

DCGTrace: A Rose-tree of DCG edge-effects. This tree structure allows the effects to have a a "time interval" that nests around and within the time intervals of other effects.

TraceCount

Count of effects and effect-patterns in trace. For fields with two numbers, the first and second projection give the Role::Editor and Role::Archivist counts, respectively.

Enums

AllocCase

Distinguish fresh allocations from those that reuse an existing location.

AllocKind

Distinguish ref cell allocations from thunk allocations

ChangeFlag
Effect

The effects of the DCG (including cleaning and dirtying) on one of its edges.

ForceCase

When the program forces a computation, either the cache is either empty (CacheMiss) or non-empty (CacheHit). The cached value may not be consistent without a cleaning. When the program forces a reference cell, it simply gets the current value.

Role

Functions

trace_count
trace_count_rec
trace_count_zero