| Copyright | (c) Erich Gut |
|---|---|
| License | BSD3 |
| Maintainer | zerich.gut@gmail.com |
| Safe Haskell | None |
| Language | Haskell2010 |
OAlg.Structure.Oriented.Point
Description
Associating a point type for structured algebraic types.
Synopsis
- type family Point x
- type EntityPoint x = (ShowPoint x, EqPoint x, ValidablePoint x, TypeablePoint x)
- newtype U x = U x
- fromU :: U x -> x
- type ApplicativePoint (h :: Type -> Type -> Type) = ApplicativeG Pnt h (->)
- pmap :: ApplicativePoint h => h x y -> Point x -> Point y
- type FunctorialPoint (h :: Type -> Type -> Type) = FunctorialG Pnt h (->)
- pmapf :: FunctorialPoint h => h x y -> Point x -> Point y
- newtype Pnt x = Pnt (Point x)
- idPnt :: Point x ~ Point y => Pnt x -> Pnt y
- toPntG :: (Point x -> Point y) -> Pnt x -> Pnt y
- fromPntG :: (Pnt x -> Pnt y) -> Point x -> Point y
- type Total = SingletonPoint
- class Show (Point x) => ShowPoint x
- class Eq (Point x) => EqPoint x
- class Ord (Point x) => OrdPoint x
- class Validable (Point x) => ValidablePoint x
- class Typeable (Point x) => TypeablePoint x
- class Singleton (Point x) => SingletonPoint x
- class XStandard (Point a) => XStandardPoint a
Point
the associated type of points.
Instances
type EntityPoint x = (ShowPoint x, EqPoint x, ValidablePoint x, TypeablePoint x) Source #
accosiating () as Point
Constructors
| U x |
Instances
Applicative
type ApplicativePoint (h :: Type -> Type -> Type) = ApplicativeG Pnt h (->) Source #
applications on Points.
type FunctorialPoint (h :: Type -> Type -> Type) = FunctorialG Pnt h (->) Source #
functorial application for Pnt.
Point Wrapper
wrapper for Points.
Instances
Total
type Total = SingletonPoint Source #
total orientations.
Helper Classes
class Show (Point x) => ShowPoint x Source #
helper class to avoid undecidable instances.
Instances
class Eq (Point x) => EqPoint x Source #
helper class to avoid undecidable instances.
Instances
class Ord (Point x) => OrdPoint x Source #
helper class to avoid undecidable instances.
Instances
| OrdPoint N Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint Q Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint Z Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint N' Source # | |
Defined in OAlg.Entity.Natural | |
| OrdPoint W' Source # | |
Defined in OAlg.Entity.Natural | |
| OrdPoint Integer Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint () Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint Int Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint x => OrdPoint (Id x) Source # | |
Defined in OAlg.Structure.Oriented.Point | |
| OrdPoint x => OrdPoint (Op x) Source # | |
Defined in OAlg.Structure.Oriented.Opposite | |
| Ord x => OrdPoint (Orientation x) Source # | |
Defined in OAlg.Structure.Oriented.Orientation | |
| OrdPoint (U x) Source # | |
Defined in OAlg.Structure.Oriented.Point | |
class Validable (Point x) => ValidablePoint x Source #
helper class to avoid undecidable instances.
Instances
class Typeable (Point x) => TypeablePoint x Source #
helper class to avoid undecidable instances.
Instances
class Singleton (Point x) => SingletonPoint x Source #
helper class to avoid undecidable instances.
Instances
class XStandard (Point a) => XStandardPoint a Source #
helper class to avoid undecidable instances.