cplug-0.2.0.0: Recompile and run partially applied C functions in Haskell, during runtime

Safe HaskellNone
LanguageHaskell2010

Data.Wrapped

Synopsis

Documentation

data Wrapped a b Source

This is a wrapper type made specifically for Compilable instances. a should be a functional type and b the "last" return type of that function. In all instances, a is considered a kind of metadata (as it should only be accessed by compiling functions).

Constructors

Wrap a b 

Instances

Functor (Wrapped a) Source 
Default a => Applicative (Wrapped a) Source 
(Default a, Bounded b) => Bounded (Wrapped a b) Source 
(Default a, Enum b) => Enum (Wrapped a b) Source 
Eq b => Eq (Wrapped a b) Source

This note applies to all the instances for `Wrapped a b`: These instances ignore a, unless it's required for the type, for example with Bounded, in which case `a = Data.Default.def`

Ord b => Ord (Wrapped a b) Source 
Show b => Show (Wrapped a b) Source 
(Default a, Default b) => Default (Wrapped a b) Source 
FixResolvable (Wrapped a b) (Wrapped a b) Source 
Resolvable (Wrapped a b) (Wrapped a b) Source 
FixCompilable (Wrapped a b) (Wrapped a b) (Wrapped c d) (Wrapped c d) Source 
Compilable (Wrapped a b) (Wrapped a b) (Wrapped c d) (Wrapped c d) Source 

defWrap :: Default a => b -> Wrapped a b Source

unwrapF :: Wrapped a b -> a Source

Unwrap the function

unwrapR :: Wrapped a b -> b Source

Unwrap the return value

unwrap :: Wrapped a b -> b Source

Synonym for unwrapR

wrappedAp :: Wrapped (t -> a) b -> t -> Wrapped a b Source

wrappedAp or `wrapped function apply`