ddc-core-0.2.1.1: Disciple Core language and type checker.

Safe HaskellSafe-Infered

DDC.Core.Collect

Description

Collecting sets of variables and constructors.

Synopsis

Documentation

freeT :: (BindStruct c, Ord n) => Env n -> c n -> Set (Bound n)Source

Collect the free Spec variables in a thing (level-1).

freeX :: (BindStruct c, Ord n) => Env n -> c n -> Set (Bound n)Source

Collect the free Data and Witness variables in a thing (level-0).

collectBound :: (BindStruct c, Ord n) => c n -> Set (Bound n)Source

Collect all the bound variables in a thing, independent of whether they are free or not.

collectSpecBinds :: (BindStruct c, Ord n) => c n -> [Bind n]Source

Collect all the Spec binders in a thing.