ForSyDe-3.1.1: ForSyDe's Haskell-embedded Domain Specific Language.




The AbstExt is used to extend existing data types with the value 'absent', which models the absence of a value.



data AbstExt a Source

The data type AbstExt has two constructors. The constructor Abst is used to model the absence of a value, while the constructor Prst is used to model present values.


Prst a 


Typeable1 AbstExt 
Eq a => Eq (AbstExt a) 
Data a => Data (AbstExt a) 
Read a => Read (AbstExt a) 
Show a => Show (AbstExt a)

The data type AbstExt is defined as an instance of Show and Read. '_' represents the value Abst while a present value is represented with its value, e.g. Prst 1 is represented as '1'.

Lift a[a8cpC] => Lift (AbstExt a[a8cpC]) 
ProcType a => ProcType (AbstExt a) 



:: a

Default value returned if the input is Abst

-> AbstExt a 
-> a 

The function fromAbstExt extracts the inner value contained in AbstExt

unsafeFromAbstExt :: AbstExt a -> aSource

Similar to fromAbstExt, but without default value

abstExt :: a -> AbstExt aSource

The function abstExt converts a usual value to a present value.

psi :: (a -> b) -> AbstExt a -> AbstExt bSource

The function psi is identical to abstExtFunc and should be used in future.

isAbsent :: AbstExt a -> BoolSource

The functions isAbsent checks for the absence of a value.

isPresent :: AbstExt a -> BoolSource

The functions isPresent checks for the presence of a value.

abstExtFunc :: (a -> b) -> AbstExt a -> AbstExt bSource

The function abstExtFunc extends a function in order to process absent extended values. If the input is ("bottom"), the output will also be ("bottom").