Safe Haskell | None |
---|---|
Language | Haskell98 |
- class (Applicative nodes, Traversable nodes) => C nodes where
- loadNodes :: C nodes => (Value (Ptr am) -> CodeGenFunction r a) -> Value Word32 -> Value (Ptr am) -> CodeGenFunction r (nodes a)
- indexNodes :: C nodes => (Value Word32 -> CodeGenFunction r v) -> Value Word32 -> Value Word32 -> CodeGenFunction r (nodes v)
- data Margin nodes = Margin {
- marginNumber :: Int
- marginOffset :: Int
- toMargin :: C nodes => (forall r. T r nodes a v) -> Margin (nodes v)
- type T r nodes a v = a -> nodes v -> CodeGenFunction r v
- data Nodes02 a = Nodes02 {}
- linear :: (PseudoRing a, IntegerConstant a) => T r Nodes02 a a
- linearVector :: (PseudoModule v, Scalar v ~ a, IntegerConstant a) => T r Nodes02 a v
- data Nodes13 a = Nodes13 {}
- cubic :: (Field a, RationalConstant a) => T r Nodes13 a a
- cubicVector :: (PseudoModule v, Scalar v ~ a, Field a, RationalConstant a) => T r Nodes13 a v
Documentation
class (Applicative nodes, Traversable nodes) => C nodes where Source
loadNodes :: C nodes => (Value (Ptr am) -> CodeGenFunction r a) -> Value Word32 -> Value (Ptr am) -> CodeGenFunction r (nodes a) Source
indexNodes :: C nodes => (Value Word32 -> CodeGenFunction r v) -> Value Word32 -> Value Word32 -> CodeGenFunction r (nodes v) Source
Margin | |
|
type T r nodes a v = a -> nodes v -> CodeGenFunction r v Source
Zero nodes before index 0 and two nodes starting from index 0.
Functor Nodes02 | |
Applicative Nodes02 | |
Foldable Nodes02 | |
Traversable Nodes02 | |
C Nodes02 | |
C l => C (Nodes02 l) | |
Undefined a => Undefined (Nodes02 a) | |
Phi a => Phi (Nodes02 a) | |
Sized value => Sized (Nodes02 value) | |
C v => C (Nodes02 v) | |
Read v => Read (Nodes02 v) | |
type Struct (Nodes02 l) | |
type Size (Nodes02 value) = Size value | |
type WriteIt (Nodes02 v) = Nodes02 (WriteIt v) | |
type Element (Nodes02 v) = Nodes02 (Element v) | |
type ReadIt (Nodes02 v) = Nodes02 (ReadIt v) |
linear :: (PseudoRing a, IntegerConstant a) => T r Nodes02 a a Source
linearVector :: (PseudoModule v, Scalar v ~ a, IntegerConstant a) => T r Nodes02 a v Source
One node before index 0 and three nodes starting from index 0.
Functor Nodes13 | |
Applicative Nodes13 | |
Foldable Nodes13 | |
Traversable Nodes13 | |
C Nodes13 | |
C l => C (Nodes13 l) | |
Undefined a => Undefined (Nodes13 a) | |
Phi a => Phi (Nodes13 a) | |
Sized value => Sized (Nodes13 value) | |
C v => C (Nodes13 v) | |
Read v => Read (Nodes13 v) | |
type Struct (Nodes13 l) | |
type Size (Nodes13 value) = Size value | |
type WriteIt (Nodes13 v) = Nodes13 (WriteIt v) | |
type Element (Nodes13 v) = Nodes13 (Element v) | |
type ReadIt (Nodes13 v) = Nodes13 (ReadIt v) |
cubicVector :: (PseudoModule v, Scalar v ~ a, Field a, RationalConstant a) => T r Nodes13 a v Source