easytensor-2.1.1.0: Pure, type-indexed haskell vector, matrix, and tensor library.
Copyright(c) Artem Chirkin
LicenseBSD3
Safe HaskellNone
LanguageHaskell2010

Numeric.ProductOrd

Description

Compare product types -- partial order.

Synopsis

Documentation

class ProductOrder a where Source #

Partial order for comparing product types -- product order.

Methods

cmp :: a -> a -> PartialOrdering Source #

Same as compare, but may return Incomparable.

Instances

Instances details
(Ord a1, Ord a2) => ProductOrder (a1, a2) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2) -> (a1, a2) -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3) => ProductOrder (a1, a2, a3) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3) -> (a1, a2, a3) -> PartialOrdering Source #

All Ord (Map f xs) => ProductOrder (TypedList f xs) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: TypedList f xs -> TypedList f xs -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4) => ProductOrder (a1, a2, a3, a4) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4) -> (a1, a2, a3, a4) -> PartialOrdering Source #

ProductOrder (DFBackend t ds) => ProductOrder (DataFrame t ds) Source # 
Instance details

Defined in Numeric.DataFrame.Type

Methods

cmp :: DataFrame t ds -> DataFrame t ds -> PartialOrdering Source #

(xns ~ Map 'N (DimsBound xns), ProductOrder (DataFrame ts (DimsBound xns))) => ProductOrder (DataFrame ts xns) Source # 
Instance details

Defined in Numeric.DataFrame.Type

Methods

cmp :: DataFrame ts xns -> DataFrame ts xns -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4, Ord a5) => ProductOrder (a1, a2, a3, a4, a5) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4, a5) -> (a1, a2, a3, a4, a5) -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4, Ord a5, Ord a6) => ProductOrder (a1, a2, a3, a4, a5, a6) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4, a5, a6) -> (a1, a2, a3, a4, a5, a6) -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4, Ord a5, Ord a6, Ord a7) => ProductOrder (a1, a2, a3, a4, a5, a6, a7) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4, a5, a6, a7) -> (a1, a2, a3, a4, a5, a6, a7) -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4, Ord a5, Ord a6, Ord a7, Ord a8) => ProductOrder (a1, a2, a3, a4, a5, a6, a7, a8) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4, a5, a6, a7, a8) -> (a1, a2, a3, a4, a5, a6, a7, a8) -> PartialOrdering Source #

(Ord a1, Ord a2, Ord a3, Ord a4, Ord a5, Ord a6, Ord a7, Ord a8, Ord a9) => ProductOrder (a1, a2, a3, a4, a5, a6, a7, a8, a9) Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

cmp :: (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> PartialOrdering Source #

data PartialOrdering Source #

Similar to Ordering, but may be Incomparable.

Constructors

PLT 
PEQ 
PGT 
Incomparable 

Instances

Instances details
Bounded PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Enum PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Eq PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Data PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PartialOrdering -> c PartialOrdering #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PartialOrdering #

toConstr :: PartialOrdering -> Constr #

dataTypeOf :: PartialOrdering -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PartialOrdering) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PartialOrdering) #

gmapT :: (forall b. Data b => b -> b) -> PartialOrdering -> PartialOrdering #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PartialOrdering -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PartialOrdering -> r #

gmapQ :: (forall d. Data d => d -> u) -> PartialOrdering -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PartialOrdering -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PartialOrdering -> m PartialOrdering #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PartialOrdering -> m PartialOrdering #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PartialOrdering -> m PartialOrdering #

Ord PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Read PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Show PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Generic PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Associated Types

type Rep PartialOrdering :: Type -> Type #

Semigroup PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

Monoid PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

type Rep PartialOrdering Source # 
Instance details

Defined in Numeric.ProductOrd

type Rep PartialOrdering = D1 ('MetaData "PartialOrdering" "Numeric.ProductOrd" "easytensor-2.1.1.0-K3wnLX20lxZC5twIGEvVbn" 'False) ((C1 ('MetaCons "PLT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PEQ" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PGT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Incomparable" 'PrefixI 'False) (U1 :: Type -> Type)))

fromOrdering :: Ordering -> PartialOrdering Source #

Extend Ordering with Incomparable option.