Copyright | (c) 2011-2015 diagrams-core team (see LICENSE) |
---|---|

License | BSD-style (see LICENSE) |

Maintainer | diagrams-discuss@googlegroups.com |

Safe Haskell | Safe |

Language | Haskell2010 |

Type family for identifying associated vector spaces.

# Documentation

type family V a :: * -> * Source #

Many sorts of objects have an associated vector space in which
they "live". The type function `V`

maps from object types to
the associated vector space. The resulting vector space has kind `* -> *`

which means it takes another value (a number) and returns a concrete
vector. For example `V2`

has kind `* -> *`

and `V2 Double`

is a vector.

type V [a] Source # | |

type V (Option a) Source # | |

type V (Set a) Source # | |

type V (Split m) Source # | |

type V (Deletable m) Source # | |

type V (TransInv t) Source # | |

type V (a -> b) Source # | |

type V (a, b) Source # | |

type V (Map k a) Source # | |

type V (Point v n) Source # | |

type V ((:+:) m n) Source # | |

type V (Measured n a) Source # | |

type V (Transformation v n) Source # | |

type V (Style v n) Source # | |

type V (Attribute v n) Source # | |

type V (Trace v n) Source # | |

type V (Envelope v n) Source # | |

type V (a, b, c) Source # | |

type V (Query v n m) Source # | |

type V (Prim b v n) Source # | |

type V (SubMap b v n m) Source # | |

type V (Subdiagram b v n m) Source # | |

type V (QDiagram b v n m) Source # | |

The numerical field for the object, the number type used for calculations.

type N [a] Source # | |

type N (Option a) Source # | |

type N (Set a) Source # | |

type N (Split m) Source # | |

type N (Deletable m) Source # | |

type N (TransInv t) Source # | |

type N (a -> b) Source # | |

type N (a, b) Source # | |

type N (Map k a) Source # | |

type N (Point v n) Source # | |

type N ((:+:) m n) Source # | |

type N (Measured n a) Source # | |

type N (Transformation v n) Source # | |

type N (Style v n) Source # | |

type N (Attribute v n) Source # | |

type N (Trace v n) Source # | |

type N (Envelope v n) Source # | |

type N (a, b, c) Source # | |

type N (Query v n m) Source # | |

type N (Prim b v n) Source # | |

type N (SubMap b v n m) Source # | |

type N (Subdiagram b v n m) Source # | |

type N (QDiagram b v n m) Source # | |

type Vn a = V a (N a) Source #

Conveient type alias to retrieve the vector type associated with an
object's vector space. This is usually used as `Vn a ~ v n`

where `v`

is
the vector space and `n`

is the numerical field.