1
1
mirror of https://github.com/github/semantic.git synced 2025-01-03 04:51:57 +03:00

Clarify the docs for evalTrace and evalReach.

This commit is contained in:
Rob Rix 2017-12-21 14:33:38 -05:00
parent 116cc96627
commit 7000e5ab60

View File

@ -38,7 +38,7 @@ type TraceInterpreter t v = TracingInterpreter t v []
type ReachableStateInterpreter t v = TracingInterpreter t v Set type ReachableStateInterpreter t v = TracingInterpreter t v Set
-- | Tracing state analyses -- | Linear trace analysis.
evalTrace :: forall v term evalTrace :: forall v term
. ( Ord v, Ord term, Ord (Cell (LocationFor v) v) . ( Ord v, Ord term, Ord (Cell (LocationFor v) v)
, Functor (Base term) , Functor (Base term)
@ -51,7 +51,7 @@ evalTrace :: forall v term
=> term -> Final (TracingInterpreter term v []) v => term -> Final (TracingInterpreter term v []) v
evalTrace = run @(TraceInterpreter term v) . fix (evTell @[] (\ recur yield -> eval recur yield . project)) pure evalTrace = run @(TraceInterpreter term v) . fix (evTell @[] (\ recur yield -> eval recur yield . project)) pure
-- | Reach state analyses -- | Reachable configuration analysis.
evalReach :: forall v term evalReach :: forall v term
. ( Ord v, Ord term, Ord (LocationFor v), Ord (Cell (LocationFor v) v) . ( Ord v, Ord term, Ord (LocationFor v), Ord (Cell (LocationFor v) v)
, Functor (Base term) , Functor (Base term)