Copyright | (c) Masahiro Sakai 2016 |
---|---|
License | BSD-style |
Maintainer | masahiro.sakai@gmail.com |
Stability | provisional |
Portability | non-portable (CPP, DeriveDataTypeable, DeriveGeneric) |
Safe Haskell | Safe |
Language | Haskell2010 |
Data.IntervalRelation
Description
Interval relations and their algebra.
Documentation
Describes how two intervals x
and y
can be related.
See Allen's interval algebra
and Intervals and their relations.
Constructors
Before | Any element of |
JustBefore | Any element of |
Overlaps | Intersection of |
Starts |
|
During |
|
Finishes |
|
Equal | Intervals are equal. |
FinishedBy | Inverse of |
Contains | Inverse of |
StartedBy | Inverse of |
OverlappedBy | Inverse of |
JustAfter | Inverse of |
After | Inverse of |
Instances
Data Relation Source # | |
Defined in Data.IntervalRelation Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Relation -> c Relation # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Relation # toConstr :: Relation -> Constr # dataTypeOf :: Relation -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Relation) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Relation) # gmapT :: (forall b. Data b => b -> b) -> Relation -> Relation # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Relation -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Relation -> r # gmapQ :: (forall d. Data d => d -> u) -> Relation -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Relation -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Relation -> m Relation # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Relation -> m Relation # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Relation -> m Relation # | |
Bounded Relation Source # | |
Enum Relation Source # | |
Defined in Data.IntervalRelation | |
Generic Relation Source # | |
Read Relation Source # | |
Show Relation Source # | |
Eq Relation Source # | |
Ord Relation Source # | |
Defined in Data.IntervalRelation | |
type Rep Relation Source # | |
Defined in Data.IntervalRelation type Rep Relation = D1 ('MetaData "Relation" "Data.IntervalRelation" "data-interval-2.1.2-MIRiQQEkd820wHV9oduNz" 'False) (((C1 ('MetaCons "Before" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "JustBefore" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Overlaps" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Starts" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "During" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Finishes" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Equal" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FinishedBy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Contains" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "StartedBy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OverlappedBy" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "JustAfter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "After" 'PrefixI 'False) (U1 :: Type -> Type))))) |