Definitions and functions for working with model coverage of a bunch of generated values. Model coverage means a coverage in terms of the original data structure that is being generated, e.g. involved types and their constructors.
import public Language.Reflection.Compat.TypeInfo
import public Language.Reflection.Loggingrecord ModelCoverage : TypeRaw information of covered labels
MkModelCoverage : SortedMap Label Nat -> ModelCoverage.unModelCoverage : ModelCoverage -> SortedMap Label NatMonadWriter ModelCoverage m => CanManageLabels mMonoid ModelCoverageSemigroup ModelCoverage.unModelCoverage : ModelCoverage -> SortedMap Label NatunModelCoverage : ModelCoverage -> SortedMap Label NatunGenD : MonadRandom m => MonadError () m => Gen em a -> m (ModelCoverage, a)unGenD' : MonadRandom m => Gen em a -> m (Maybe (ModelCoverage, a))unGenTryAllD' : RandomGen g => g -> Gen em a -> Stream (g, Maybe (ModelCoverage, a))unGenTryAllD : RandomGen g => g -> Gen em a -> Stream (Maybe (ModelCoverage, a))unGenTryND : RandomGen g => Nat -> g -> Gen em a -> LazyList (ModelCoverage, a)record CoverageGenInfo : (0 _ : k) -> TypeHigher-level coverage information, in terms of types and constructors, etc.
MkCoverageGenInfo : SortedMap String TypeInfo -> SortedMap String (TypeInfo, Con) -> SortedMap TypeInfo (Nat, SortedMap Con Nat) -> CoverageGenInfo g.constructors : CoverageGenInfo g -> SortedMap String (TypeInfo, Con).coverageInfo : CoverageGenInfo g -> SortedMap TypeInfo (Nat, SortedMap Con Nat).types : CoverageGenInfo g -> SortedMap String TypeInfoShow (CoverageGenInfo g)initCoverageInfo' : (n : Name) -> Elab (CoverageGenInfo n)initCoverageInfo'' : (ns : List Name) -> Elab (CoverageGenInfo ns)initCoverageInfo : (0 x : g) -> Elab (CoverageGenInfo x)withCoverage : Gen em a -> Elab (Gen em a)Adds labelling of types and constructors to a given generator
Added labelling is not deep, i.e. it adds labels only for the returned type of a generator.
If returned type is a dependent pair, the rightmost type is taken into the account.
registerCoverage : ModelCoverage -> CoverageGenInfo g -> CoverageGenInfo g