Feldspar.Wrap

feldspar-language-0.6.0.2: A functional embedded language for DSP and parallelism

Safe Haskell | None

Feldspar.Wrap

Description

Module Data.TypeLevel.Num.Aliases is re-exported because wrappers use type level numbers frequently

Synopsis

- class Wrap t w where
  - wrap :: t -> w
- data Data' s a = Data' {
  - unData' :: Data a
  }
- module Data.TypeLevel.Num.Aliases
- data D0
- data D1
- data D2
- data D3
- data D4
- data D5
- data D6
- data D7
- data D8
- data D9

# Documentation

class Wrap t w where

Wrapping Feldspar functions

Methods

wrap :: t -> w

Instances

Wrap (Data a) (Data a) | Basic instances to handle `Data a` input and output. Other instances are located in the concerned libraries.
Type a => Wrap (Vector (Data a)) (Data [a]) |
Unit w => Wrap (BitVector w) (Data [w]) |
Type a => Wrap (Matrix a) (Data [[a]]) |
Wrap t u => Wrap (Data a -> t) (Data a -> u) |
(Wrap t u, Type a, Nat s) => Wrap (Vector1 a -> t) (Data' s [a] -> u) |
(Wrap t u, Unit w, Nat s) => Wrap (BitVector w -> t) (Data' s [w] -> u) |
(Wrap t u, Type a, Nat row, Nat col) => Wrap (Matrix a -> t) (Data' (row, col) [[a]] -> u) |

data Data' s a

Extended `Data` to be used in wrappers

Constructors

Data' |
Fields unData' :: Data a

Instances

Type a => Syntactic (Data' s a) |
Type a => Syntax (Data' s a) |
(Wrap t u, Type a, Nat s) => Wrap (Vector1 a -> t) (Data' s [a] -> u) |
(Wrap t u, Unit w, Nat s) => Wrap (BitVector w -> t) (Data' s [w] -> u) |
(Wrap t u, Type a, Nat row, Nat col) => Wrap (Matrix a -> t) (Data' (row, col) [[a]] -> u) |

module Data.TypeLevel.Num.Aliases

data D0

Decimal digit zero

Instances

Show D0 |
Typeable D0 |
Lift D0 |
NatI D0 |
PosI x => NatI (:* x D0) |
PosI x => PosI (:* x D0) |

data D1

Decimal digit one

Instances

Show D1 |
Typeable D1 |
Lift D1 |
NatI D1 |
PosI D1 |
PosI x => NatI (:* x D1) |
PosI x => PosI (:* x D1) |

data D2

Decimal digit two

Instances

Show D2 |
Typeable D2 |
Lift D2 |
NatI D2 |
PosI D2 |
PosI x => NatI (:* x D2) |
PosI x => PosI (:* x D2) |

data D3

Decimal digit three

Instances

Show D3 |
Typeable D3 |
Lift D3 |
NatI D3 |
PosI D3 |
PosI x => NatI (:* x D3) |
PosI x => PosI (:* x D3) |

data D4

Decimal digit four

Instances

Show D4 |
Typeable D4 |
Lift D4 |
NatI D4 |
PosI D4 |
PosI x => NatI (:* x D4) |
PosI x => PosI (:* x D4) |

data D5

Decimal digit five

Instances

Show D5 |
Typeable D5 |
Lift D5 |
NatI D5 |
PosI D5 |
PosI x => NatI (:* x D5) |
PosI x => PosI (:* x D5) |

data D6

Decimal digit six

Instances

Show D6 |
Typeable D6 |
Lift D6 |
NatI D6 |
PosI D6 |
PosI x => NatI (:* x D6) |
PosI x => PosI (:* x D6) |

data D7

Decimal digit seven

Instances

Show D7 |
Typeable D7 |
Lift D7 |
NatI D7 |
PosI D7 |
PosI x => NatI (:* x D7) |
PosI x => PosI (:* x D7) |

data D8

Decimal digit eight

Instances

Show D8 |
Typeable D8 |
Lift D8 |
NatI D8 |
PosI D8 |
PosI x => NatI (:* x D8) |
PosI x => PosI (:* x D8) |

data D9

Decimal digit nine

Instances

Show D9 |
Typeable D9 |
Lift D9 |
NatI D9 |
PosI D9 |
PosI x => NatI (:* x D9) |
PosI x => PosI (:* x D9) |