| Copyright | Copyright (C) 2006-2018 Bjorn Buckwalter |
|---|---|
| License | BSD3 |
| Maintainer | bjorn@buckwalter.se |
| Stability | Stable |
| Portability | GHC only |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
| Extensions |
|
Numeric.Units.Dimensional.Variants
Description
Provides a type level representation of Variants of dimensional values,
which may be quantities or units.
Synopsis
Documentation
The kind of variants of dimensional values.
Constructors
| DQuantity ExactPi' | The value is a quantity, stored as an |
| DUnit Metricality | The value is a unit, possibly a |
Instances
data Metricality Source #
Encodes whether a unit is a metric unit, that is, whether it can be combined with a metric prefix to form a related unit.
Constructors
| Metric | Capable of receiving a metric prefix. |
| NonMetric | Incapable of receiving a metric prefix. |
Instances
| NFData Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants Methods rnf :: Metricality -> () Source # | |||||
| Data Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Metricality -> c Metricality Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Metricality Source # toConstr :: Metricality -> Constr Source # dataTypeOf :: Metricality -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Metricality) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Metricality) Source # gmapT :: (forall b. Data b => b -> b) -> Metricality -> Metricality Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Metricality -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Metricality -> r Source # gmapQ :: (forall d. Data d => d -> u) -> Metricality -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> Metricality -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Metricality -> m Metricality Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Metricality -> m Metricality Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Metricality -> m Metricality Source # | |||||
| Generic Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants Associated Types
Methods from :: Metricality -> Rep Metricality x Source # to :: Rep Metricality x -> Metricality Source # | |||||
| Eq Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants Methods (==) :: Metricality -> Metricality -> Bool Source # (/=) :: Metricality -> Metricality -> Bool Source # | |||||
| Ord Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants Methods compare :: Metricality -> Metricality -> Ordering Source # (<) :: Metricality -> Metricality -> Bool Source # (<=) :: Metricality -> Metricality -> Bool Source # (>) :: Metricality -> Metricality -> Bool Source # (>=) :: Metricality -> Metricality -> Bool Source # max :: Metricality -> Metricality -> Metricality Source # min :: Metricality -> Metricality -> Metricality Source # | |||||
| type Rep Metricality Source # | |||||
Defined in Numeric.Units.Dimensional.Variants | |||||
type family (v1 :: Variant) * (v2 :: Variant) :: Variant where ... infixl 7 Source #
Forms the product of two Variants.
The product of units is a non-metric unit.
The product of quantities is a quantity.
type family (v1 :: Variant) / (v2 :: Variant) :: Variant where ... Source #
Forms the quotient of two Variants.
The quotient of units is a non-metric unit.
The quotient of quantities is a quantity.