Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
This module provides the Propagator
and HasPropagator
classes.
Synopsis
- class Propagator p x | p -> x where
- class Propagator (Prop x) x => HasPropagator x where
- type Prop x
Documentation
class Propagator p x | p -> x where Source #
The Propagator class defines some functions shared by different propagator implementations. This backs the generic Data.Recursive.R.Internal wrapper.
The type of values inside the propagator
newConstProp :: x -> IO p Source #
class Propagator (Prop x) x => HasPropagator x Source #
The HasPropagator class is used to pick a propagator implementation for a particular value type.
Instances
HasPropagator Bool Source # | |
Defined in Data.Recursive.Propagator.Class | |
HasPropagator (Dual Bool) Source # | |
Eq a => HasPropagator (Set a) Source # | |
Defined in Data.Recursive.Propagator.Class |