Safe Haskell | None |
---|---|
Language | Haskell2010 |
This module shows how to use Template Haskell to generate the data types corresponding to your context-free grammar. You will want to look at the source; the Haddocks will show only the generated types and not the Template Haskell that was used to generate them.
Documentation
Letter (t, a) |
Bifunctor Letter Source # | |
Functor (Letter t) Source # | |
Foldable (Letter t) Source # | |
Traversable (Letter t) Source # | |
(Eq t, Eq a) => Eq (Letter t a) Source # | |
(Ord t, Ord a) => Ord (Letter t a) Source # | |
(Show t, Show a) => Show (Letter t a) Source # | |
Wrapped (Letter t a) Source # | |
type Unwrapped (Letter t a) Source # | |
NoLetter | |
ConsLetter (Letter t a) (Letters t a) |
data PostalWord t a Source #
PostalWord | |
|
Bifunctor PostalWord Source # | |
Functor (PostalWord t) Source # | |
Foldable (PostalWord t) Source # | |
Traversable (PostalWord t) Source # | |
(Eq t, Eq a) => Eq (PostalWord t a) Source # | |
(Ord t, Ord a) => Ord (PostalWord t a) Source # | |
(Show t, Show a) => Show (PostalWord t a) Source # | |
Space (t, a) |
Bifunctor Space Source # | |
Functor (Space t) Source # | |
Foldable (Space t) Source # | |
Traversable (Space t) Source # | |
(Eq t, Eq a) => Eq (Space t a) Source # | |
(Ord t, Ord a) => Ord (Space t a) Source # | |
(Show t, Show a) => Show (Space t a) Source # | |
Wrapped (Space t a) Source # | |
type Unwrapped (Space t a) Source # | |
data PreSpacedWord t a Source #
PreSpacedWord | |
|
Bifunctor PreSpacedWord Source # | |
Functor (PreSpacedWord t) Source # | |
Foldable (PreSpacedWord t) Source # | |
Traversable (PreSpacedWord t) Source # | |
(Eq t, Eq a) => Eq (PreSpacedWord t a) Source # | |
(Ord t, Ord a) => Ord (PreSpacedWord t a) Source # | |
(Show t, Show a) => Show (PreSpacedWord t a) Source # | |
newtype PreSpacedWord'Star t a Source #
PreSpacedWord'Star (Seq (PreSpacedWord t a)) |
Bifunctor PreSpacedWord'Star Source # | |
Functor (PreSpacedWord'Star t) Source # | |
Foldable (PreSpacedWord'Star t) Source # | |
Traversable (PreSpacedWord'Star t) Source # | |
(Eq t, Eq a) => Eq (PreSpacedWord'Star t a) Source # | |
(Ord t, Ord a) => Ord (PreSpacedWord'Star t a) Source # | |
(Show t, Show a) => Show (PreSpacedWord'Star t a) Source # | |
Semigroup (PreSpacedWord'Star t a) Source # | |
Monoid (PreSpacedWord'Star t a) Source # | |
Wrapped (PreSpacedWord'Star t a) Source # | |
type Unwrapped (PreSpacedWord'Star t a) Source # | |
Words | |
|
Comma (t, a) |
Bifunctor Comma Source # | |
Functor (Comma t) Source # | |
Foldable (Comma t) Source # | |
Traversable (Comma t) Source # | |
(Eq t, Eq a) => Eq (Comma t a) Source # | |
(Ord t, Ord a) => Ord (Comma t a) Source # | |
(Show t, Show a) => Show (Comma t a) Source # | |
Wrapped (Comma t a) Source # | |
type Unwrapped (Comma t a) Source # | |
data CommaSpace t a Source #
CommaSpace | |
|
Bifunctor CommaSpace Source # | |
Functor (CommaSpace t) Source # | |
Foldable (CommaSpace t) Source # | |
Traversable (CommaSpace t) Source # | |
(Eq t, Eq a) => Eq (CommaSpace t a) Source # | |
(Ord t, Ord a) => Ord (CommaSpace t a) Source # | |
(Show t, Show a) => Show (CommaSpace t a) Source # | |
Newline (t, a) |
Bifunctor Newline Source # | |
Functor (Newline t) Source # | |
Foldable (Newline t) Source # | |
Traversable (Newline t) Source # | |
(Eq t, Eq a) => Eq (Newline t a) Source # | |
(Ord t, Ord a) => Ord (Newline t a) Source # | |
(Show t, Show a) => Show (Newline t a) Source # | |
Wrapped (Newline t a) Source # | |
type Unwrapped (Newline t a) Source # | |
Separator'CommaSpace (CommaSpace t a) | |
Separator'Newline (Newline t a) |
NameLine | |
|
Digit (t, a) |
Bifunctor Digit Source # | |
Functor (Digit t) Source # | |
Foldable (Digit t) Source # | |
Traversable (Digit t) Source # | |
(Eq t, Eq a) => Eq (Digit t a) Source # | |
(Ord t, Ord a) => Ord (Digit t a) Source # | |
(Show t, Show a) => Show (Digit t a) Source # | |
Wrapped (Digit t a) Source # | |
type Unwrapped (Digit t a) Source # | |
newtype Digit'Plus t a Source #
Digit'Plus (NonEmpty (Digit t a)) |
Bifunctor Digit'Plus Source # | |
Functor (Digit'Plus t) Source # | |
Foldable (Digit'Plus t) Source # | |
Traversable (Digit'Plus t) Source # | |
(Eq t, Eq a) => Eq (Digit'Plus t a) Source # | |
(Ord t, Ord a) => Ord (Digit'Plus t a) Source # | |
(Show t, Show a) => Show (Digit'Plus t a) Source # | |
Semigroup (Digit'Plus t a) Source # | |
Wrapped (Digit'Plus t a) Source # | |
type Unwrapped (Digit'Plus t a) Source # | |
Number (Digit'Plus t a) |
Bifunctor Number Source # | |
Functor (Number t) Source # | |
Foldable (Number t) Source # | |
Traversable (Number t) Source # | |
(Eq t, Eq a) => Eq (Number t a) Source # | |
(Ord t, Ord a) => Ord (Number t a) Source # | |
(Show t, Show a) => Show (Number t a) Source # | |
Semigroup (Number t a) Source # | |
Wrapped (Number t a) Source # | |
type Unwrapped (Number t a) Source # | |
North (t, a) |
Bifunctor North Source # | |
Functor (North t) Source # | |
Foldable (North t) Source # | |
Traversable (North t) Source # | |
(Eq t, Eq a) => Eq (North t a) Source # | |
(Ord t, Ord a) => Ord (North t a) Source # | |
(Show t, Show a) => Show (North t a) Source # | |
Wrapped (North t a) Source # | |
type Unwrapped (North t a) Source # | |
South (t, a) |
Bifunctor South Source # | |
Functor (South t) Source # | |
Foldable (South t) Source # | |
Traversable (South t) Source # | |
(Eq t, Eq a) => Eq (South t a) Source # | |
(Ord t, Ord a) => Ord (South t a) Source # | |
(Show t, Show a) => Show (South t a) Source # | |
Wrapped (South t a) Source # | |
type Unwrapped (South t a) Source # | |
East (t, a) |
West (t, a) |
NE'0 (t, a) |
NE'1 (t, a) |
NE | |
|
NW'0 (t, a) |
NW'1 (t, a) |
NW | |
|
SE'0 (t, a) |
SE'1 (t, a) |
SE | |
|
SW'0 (t, a) |
SW'1 (t, a) |
SW | |
|
Direction'North (North t a) | |
Direction'South (South t a) | |
Direction'East (East t a) | |
Direction'West (West t a) | |
Direction'NE (NE t a) | |
Direction'NW (NW t a) | |
Direction'SE (SE t a) | |
Direction'SW (SW t a) |
data DirectionSpace t a Source #
DirectionSpace | |
|
Bifunctor DirectionSpace Source # | |
Functor (DirectionSpace t) Source # | |
Foldable (DirectionSpace t) Source # | |
Traversable (DirectionSpace t) Source # | |
(Eq t, Eq a) => Eq (DirectionSpace t a) Source # | |
(Ord t, Ord a) => Ord (DirectionSpace t a) Source # | |
(Show t, Show a) => Show (DirectionSpace t a) Source # | |
newtype DirectionSpace'Opt t a Source #
DirectionSpace'Opt (Maybe (DirectionSpace t a)) |
Bifunctor DirectionSpace'Opt Source # | |
Functor (DirectionSpace'Opt t) Source # | |
Foldable (DirectionSpace'Opt t) Source # | |
Traversable (DirectionSpace'Opt t) Source # | |
(Eq t, Eq a) => Eq (DirectionSpace'Opt t a) Source # | |
(Ord t, Ord a) => Ord (DirectionSpace'Opt t a) Source # | |
(Show t, Show a) => Show (DirectionSpace'Opt t a) Source # | |
Wrapped (DirectionSpace'Opt t a) Source # | |
type Unwrapped (DirectionSpace'Opt t a) Source # | |
newtype StreetName t a Source #
StreetName (Words t a) |
Bifunctor StreetName Source # | |
Functor (StreetName t) Source # | |
Foldable (StreetName t) Source # | |
Traversable (StreetName t) Source # | |
(Eq t, Eq a) => Eq (StreetName t a) Source # | |
(Ord t, Ord a) => Ord (StreetName t a) Source # | |
(Show t, Show a) => Show (StreetName t a) Source # | |
Wrapped (StreetName t a) Source # | |
type Unwrapped (StreetName t a) Source # | |
Street'0 (t, a) |
Bifunctor Street'0 Source # | |
Functor (Street'0 t) Source # | |
Foldable (Street'0 t) Source # | |
Traversable (Street'0 t) Source # | |
(Eq t, Eq a) => Eq (Street'0 t a) Source # | |
(Ord t, Ord a) => Ord (Street'0 t a) Source # | |
(Show t, Show a) => Show (Street'0 t a) Source # | |
Wrapped (Street'0 t a) Source # | |
type Unwrapped (Street'0 t a) Source # | |
Street'1 (t, a) |
Bifunctor Street'1 Source # | |
Functor (Street'1 t) Source # | |
Foldable (Street'1 t) Source # | |
Traversable (Street'1 t) Source # | |
(Eq t, Eq a) => Eq (Street'1 t a) Source # | |
(Ord t, Ord a) => Ord (Street'1 t a) Source # | |
(Show t, Show a) => Show (Street'1 t a) Source # | |
Wrapped (Street'1 t a) Source # | |
type Unwrapped (Street'1 t a) Source # | |
Street | |
|
Avenue'0 (t, a) |
Bifunctor Avenue'0 Source # | |
Functor (Avenue'0 t) Source # | |
Foldable (Avenue'0 t) Source # | |
Traversable (Avenue'0 t) Source # | |
(Eq t, Eq a) => Eq (Avenue'0 t a) Source # | |
(Ord t, Ord a) => Ord (Avenue'0 t a) Source # | |
(Show t, Show a) => Show (Avenue'0 t a) Source # | |
Wrapped (Avenue'0 t a) Source # | |
type Unwrapped (Avenue'0 t a) Source # | |
Avenue'1 (t, a) |
Bifunctor Avenue'1 Source # | |
Functor (Avenue'1 t) Source # | |
Foldable (Avenue'1 t) Source # | |
Traversable (Avenue'1 t) Source # | |
(Eq t, Eq a) => Eq (Avenue'1 t a) Source # | |
(Ord t, Ord a) => Ord (Avenue'1 t a) Source # | |
(Show t, Show a) => Show (Avenue'1 t a) Source # | |
Wrapped (Avenue'1 t a) Source # | |
type Unwrapped (Avenue'1 t a) Source # | |
Avenue'2 (t, a) |
Bifunctor Avenue'2 Source # | |
Functor (Avenue'2 t) Source # | |
Foldable (Avenue'2 t) Source # | |
Traversable (Avenue'2 t) Source # | |
(Eq t, Eq a) => Eq (Avenue'2 t a) Source # | |
(Ord t, Ord a) => Ord (Avenue'2 t a) Source # | |
(Show t, Show a) => Show (Avenue'2 t a) Source # | |
Wrapped (Avenue'2 t a) Source # | |
type Unwrapped (Avenue'2 t a) Source # | |
Avenue | |
|
Way'0 (t, a) |
Bifunctor Way'0 Source # | |
Functor (Way'0 t) Source # | |
Foldable (Way'0 t) Source # | |
Traversable (Way'0 t) Source # | |
(Eq t, Eq a) => Eq (Way'0 t a) Source # | |
(Ord t, Ord a) => Ord (Way'0 t a) Source # | |
(Show t, Show a) => Show (Way'0 t a) Source # | |
Wrapped (Way'0 t a) Source # | |
type Unwrapped (Way'0 t a) Source # | |
Way'1 (t, a) |
Bifunctor Way'1 Source # | |
Functor (Way'1 t) Source # | |
Foldable (Way'1 t) Source # | |
Traversable (Way'1 t) Source # | |
(Eq t, Eq a) => Eq (Way'1 t a) Source # | |
(Ord t, Ord a) => Ord (Way'1 t a) Source # | |
(Show t, Show a) => Show (Way'1 t a) Source # | |
Wrapped (Way'1 t a) Source # | |
type Unwrapped (Way'1 t a) Source # | |
Way'2 (t, a) |
Bifunctor Way'2 Source # | |
Functor (Way'2 t) Source # | |
Foldable (Way'2 t) Source # | |
Traversable (Way'2 t) Source # | |
(Eq t, Eq a) => Eq (Way'2 t a) Source # | |
(Ord t, Ord a) => Ord (Way'2 t a) Source # | |
(Show t, Show a) => Show (Way'2 t a) Source # | |
Wrapped (Way'2 t a) Source # | |
type Unwrapped (Way'2 t a) Source # | |
Way | |
|
newtype Boulevard'0 t a Source #
Boulevard'0 (t, a) |
Bifunctor Boulevard'0 Source # | |
Functor (Boulevard'0 t) Source # | |
Foldable (Boulevard'0 t) Source # | |
Traversable (Boulevard'0 t) Source # | |
(Eq t, Eq a) => Eq (Boulevard'0 t a) Source # | |
(Ord t, Ord a) => Ord (Boulevard'0 t a) Source # | |
(Show t, Show a) => Show (Boulevard'0 t a) Source # | |
Wrapped (Boulevard'0 t a) Source # | |
type Unwrapped (Boulevard'0 t a) Source # | |
newtype Boulevard'1 t a Source #
Boulevard'1 (t, a) |
Bifunctor Boulevard'1 Source # | |
Functor (Boulevard'1 t) Source # | |
Foldable (Boulevard'1 t) Source # | |
Traversable (Boulevard'1 t) Source # | |
(Eq t, Eq a) => Eq (Boulevard'1 t a) Source # | |
(Ord t, Ord a) => Ord (Boulevard'1 t a) Source # | |
(Show t, Show a) => Show (Boulevard'1 t a) Source # | |
Wrapped (Boulevard'1 t a) Source # | |
type Unwrapped (Boulevard'1 t a) Source # | |
newtype Boulevard'2 t a Source #
Boulevard'2 (t, a) |
Bifunctor Boulevard'2 Source # | |
Functor (Boulevard'2 t) Source # | |
Foldable (Boulevard'2 t) Source # | |
Traversable (Boulevard'2 t) Source # | |
(Eq t, Eq a) => Eq (Boulevard'2 t a) Source # | |
(Ord t, Ord a) => Ord (Boulevard'2 t a) Source # | |
(Show t, Show a) => Show (Boulevard'2 t a) Source # | |
Wrapped (Boulevard'2 t a) Source # | |
type Unwrapped (Boulevard'2 t a) Source # | |
newtype Boulevard'3 t a Source #
Boulevard'3 (t, a) |
Bifunctor Boulevard'3 Source # | |
Functor (Boulevard'3 t) Source # | |
Foldable (Boulevard'3 t) Source # | |
Traversable (Boulevard'3 t) Source # | |
(Eq t, Eq a) => Eq (Boulevard'3 t a) Source # | |
(Ord t, Ord a) => Ord (Boulevard'3 t a) Source # | |
(Show t, Show a) => Show (Boulevard'3 t a) Source # | |
Wrapped (Boulevard'3 t a) Source # | |
type Unwrapped (Boulevard'3 t a) Source # | |
Boulevard | |
|
Suffix'Street (Street t a) | |
Suffix'Avenue (Avenue t a) | |
Suffix'Way (Way t a) | |
Suffix'Boulevard (Boulevard t a) |
data SpaceSuffix t a Source #
SpaceSuffix | |
|
Bifunctor SpaceSuffix Source # | |
Functor (SpaceSuffix t) Source # | |
Foldable (SpaceSuffix t) Source # | |
Traversable (SpaceSuffix t) Source # | |
(Eq t, Eq a) => Eq (SpaceSuffix t a) Source # | |
(Ord t, Ord a) => Ord (SpaceSuffix t a) Source # | |
(Show t, Show a) => Show (SpaceSuffix t a) Source # | |
newtype SpaceSuffix'Opt t a Source #
SpaceSuffix'Opt (Maybe (SpaceSuffix t a)) |
Bifunctor SpaceSuffix'Opt Source # | |
Functor (SpaceSuffix'Opt t) Source # | |
Foldable (SpaceSuffix'Opt t) Source # | |
Traversable (SpaceSuffix'Opt t) Source # | |
(Eq t, Eq a) => Eq (SpaceSuffix'Opt t a) Source # | |
(Ord t, Ord a) => Ord (SpaceSuffix'Opt t a) Source # | |
(Show t, Show a) => Show (SpaceSuffix'Opt t a) Source # | |
Wrapped (SpaceSuffix'Opt t a) Source # | |
type Unwrapped (SpaceSuffix'Opt t a) Source # | |
data StreetLine t a Source #
StreetLine | |
|
Bifunctor StreetLine Source # | |
Functor (StreetLine t) Source # | |
Foldable (StreetLine t) Source # | |
Traversable (StreetLine t) Source # | |
(Eq t, Eq a) => Eq (StreetLine t a) Source # | |
(Ord t, Ord a) => Ord (StreetLine t a) Source # | |
(Show t, Show a) => Show (StreetLine t a) Source # | |
Bifunctor State Source # | |
Functor (State t) Source # | |
Foldable (State t) Source # | |
Traversable (State t) Source # | |
(Eq t, Eq a) => Eq (State t a) Source # | |
(Ord t, Ord a) => Ord (State t a) Source # | |
(Show t, Show a) => Show (State t a) Source # | |
Wrapped (State t a) Source # | |
type Unwrapped (State t a) Source # | |
ZipCode | |
|
newtype Newline'Opt t a Source #
Newline'Opt (Maybe (Newline t a)) |
Bifunctor Newline'Opt Source # | |
Functor (Newline'Opt t) Source # | |
Foldable (Newline'Opt t) Source # | |
Traversable (Newline'Opt t) Source # | |
(Eq t, Eq a) => Eq (Newline'Opt t a) Source # | |
(Ord t, Ord a) => Ord (Newline'Opt t a) Source # | |
(Show t, Show a) => Show (Newline'Opt t a) Source # | |
Wrapped (Newline'Opt t a) Source # | |
type Unwrapped (Newline'Opt t a) Source # | |
CityLine | |
|
Address | |
|