| Copyright | (c) 2011-2015 diagrams-core team (see LICENSE) | 
|---|---|
| License | BSD-style (see LICENSE) | 
| Maintainer | diagrams-discuss@googlegroups.com | 
| Safe Haskell | Safe | 
| Language | Haskell2010 | 
Diagrams.Core.V
Description
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.
Instances
| type V [a] = V a Source | |
| type V (Set a) = V a Source | |
| type V (Split m) = V m Source | |
| type V (Deletable m) = V m Source | |
| type V (Option a) = V a Source | |
| type V (TransInv t) = V t Source | |
| type V (a -> b) = V b Source | |
| type V (a, b) = V a Source | |
| type V (Map k a) = V a Source | |
| type V (Point v n) = v Source | |
| type V ((:+:) m n) = V m Source | |
| type V (Measured n a) = V a Source | |
| type V (Transformation v n) = v Source | |
| type V (Style v n) = v Source | |
| type V (Attribute v n) = v Source | |
| type V (Trace v n) = v Source | |
| type V (Envelope v n) = v Source | |
| type V (a, b, c) = V a Source | |
| type V (Query v n m) = v Source | |
| type V (Prim b v n) = v Source | |
| type V (SubMap b v n m) = v Source | |
| type V (Subdiagram b v n m) = v Source | |
| type V (QDiagram b v n m) = v Source | 
The numerical field for the object, the number type used for calculations.
Instances
| type N [a] = N a Source | |
| type N (Set a) = N a Source | |
| type N (Split m) = N m Source | |
| type N (Deletable m) = N m Source | |
| type N (Option a) = N a Source | |
| type N (TransInv t) = N t Source | |
| type N (a -> b) = N b Source | |
| type N (a, b) = N a Source | |
| type N (Map k a) = N a Source | |
| type N (Point v n) = n Source | |
| type N ((:+:) m n) = N m Source | |
| type N (Measured n a) = N a Source | |
| type N (Transformation v n) = n Source | |
| type N (Style v n) = n Source | |
| type N (Attribute v n) = n Source | |
| type N (Trace v n) = n Source | |
| type N (Envelope v n) = n Source | |
| type N (a, b, c) = N a Source | |
| type N (Query v n m) = n Source | |
| type N (Prim b v n) = n Source | |
| type N (SubMap b v n m) = n Source | |
| type N (Subdiagram b v n m) = n Source | |
| type N (QDiagram b v n m) = n 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.