ddc-core-flow-0.4.1.3: Disciplined Disciple Compiler data flow compiler.

Safe HaskellNone

DDC.Core.Flow.Transform.Rates.Constraints

Synopsis

Documentation

data Constraint Source

Constraint information An equal can have multiple - eg map3 Filtered only has its source input

Constructors

ConEqual [Name] 
ConFiltered Name 

Instances

type EquivClass = [Set Name]Source

canonName :: EquivClass -> Name -> NameSource

Get canonical name for given equivalence class Return original if there is none (for example, a filter with no maps applied would have none since equiv classes are only built from maps)

checkBindConstraints :: [(Name, ExpF)] -> LogFailures (ConstraintMap, EquivClass)Source

Check constraints for a single function body's bindings. The bindings must be in a-normal form.