Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Aeson.Decoding.Tokens
Contents
Description
Token definitions.
Synopsis
- data Tokens k e
- = TkLit !Lit k
- | TkText !Text k
- | TkNumber !Number k
- | TkArrayOpen (TkArray k e)
- | TkRecordOpen (TkRecord k e)
- | TkErr e
- data Lit
- data Number
- = NumInteger !Integer
- | NumDecimal !Scientific
- | NumScientific !Scientific
- data TkArray k e
- = TkItem (Tokens (TkArray k e) e)
- | TkArrayEnd k
- | TkArrayErr e
- data TkRecord k e
- = TkPair !Key (Tokens (TkRecord k e) e)
- | TkRecordEnd k
- | TkRecordErr e
Types
A well-formed JSON token stream.
Note: Lit
exists to make Tokens
have only 6 constructors.
This may or may not have impact on performance.
Since: 2.1.2.0
Constructors
TkLit !Lit k | |
TkText !Text k | |
TkNumber !Number k | |
TkArrayOpen (TkArray k e) | |
TkRecordOpen (TkRecord k e) | |
TkErr e |
Instances
Bifoldable Tokens # | |
Bifunctor Tokens # | |
Bitraversable Tokens # | |
Defined in Data.Aeson.Decoding.Tokens Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Tokens a b -> f (Tokens c d) | |
Foldable (Tokens k) # | |
Defined in Data.Aeson.Decoding.Tokens Methods fold :: Monoid m => Tokens k m -> m foldMap :: Monoid m => (a -> m) -> Tokens k a -> m foldMap' :: Monoid m => (a -> m) -> Tokens k a -> m foldr :: (a -> b -> b) -> b -> Tokens k a -> b foldr' :: (a -> b -> b) -> b -> Tokens k a -> b foldl :: (b -> a -> b) -> b -> Tokens k a -> b foldl' :: (b -> a -> b) -> b -> Tokens k a -> b foldr1 :: (a -> a -> a) -> Tokens k a -> a foldl1 :: (a -> a -> a) -> Tokens k a -> a elem :: Eq a => a -> Tokens k a -> Bool maximum :: Ord a => Tokens k a -> a minimum :: Ord a => Tokens k a -> a | |
Traversable (Tokens k) # | |
Functor (Tokens k) # | |
(Show k, Show e) => Show (Tokens k e) # | |
(Eq k, Eq e) => Eq (Tokens k e) # | |
Literals. null
, true
, false
.
Numbers
We preserve whether the number was integral, decimal or in scientific form.
Constructors
NumInteger !Integer | e.g. |
NumDecimal !Scientific | e.g. |
NumScientific !Scientific | e.g. |
Array tokens.
Constructors
TkItem (Tokens (TkArray k e) e) | |
TkArrayEnd k | |
TkArrayErr e |
Instances
Bifoldable TkArray # | |
Bifunctor TkArray # | |
Bitraversable TkArray # | |
Defined in Data.Aeson.Decoding.Tokens Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> TkArray a b -> f (TkArray c d) | |
Foldable (TkArray k) # | |
Defined in Data.Aeson.Decoding.Tokens Methods fold :: Monoid m => TkArray k m -> m foldMap :: Monoid m => (a -> m) -> TkArray k a -> m foldMap' :: Monoid m => (a -> m) -> TkArray k a -> m foldr :: (a -> b -> b) -> b -> TkArray k a -> b foldr' :: (a -> b -> b) -> b -> TkArray k a -> b foldl :: (b -> a -> b) -> b -> TkArray k a -> b foldl' :: (b -> a -> b) -> b -> TkArray k a -> b foldr1 :: (a -> a -> a) -> TkArray k a -> a foldl1 :: (a -> a -> a) -> TkArray k a -> a elem :: Eq a => a -> TkArray k a -> Bool maximum :: Ord a => TkArray k a -> a minimum :: Ord a => TkArray k a -> a | |
Traversable (TkArray k) # | |
Defined in Data.Aeson.Decoding.Tokens | |
Functor (TkArray k) # | |
(Show k, Show e) => Show (TkArray k e) # | |
(Eq k, Eq e) => Eq (TkArray k e) # | |
Record tokens.
Constructors
TkPair !Key (Tokens (TkRecord k e) e) | |
TkRecordEnd k | |
TkRecordErr e |
Instances
Bifoldable TkRecord # | |
Bifunctor TkRecord # | |
Bitraversable TkRecord # | |
Defined in Data.Aeson.Decoding.Tokens Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> TkRecord a b -> f (TkRecord c d) | |
Foldable (TkRecord k) # | |
Defined in Data.Aeson.Decoding.Tokens Methods fold :: Monoid m => TkRecord k m -> m foldMap :: Monoid m => (a -> m) -> TkRecord k a -> m foldMap' :: Monoid m => (a -> m) -> TkRecord k a -> m foldr :: (a -> b -> b) -> b -> TkRecord k a -> b foldr' :: (a -> b -> b) -> b -> TkRecord k a -> b foldl :: (b -> a -> b) -> b -> TkRecord k a -> b foldl' :: (b -> a -> b) -> b -> TkRecord k a -> b foldr1 :: (a -> a -> a) -> TkRecord k a -> a foldl1 :: (a -> a -> a) -> TkRecord k a -> a elem :: Eq a => a -> TkRecord k a -> Bool maximum :: Ord a => TkRecord k a -> a minimum :: Ord a => TkRecord k a -> a | |
Traversable (TkRecord k) # | |
Defined in Data.Aeson.Decoding.Tokens | |
Functor (TkRecord k) # | |
(Show k, Show e) => Show (TkRecord k e) # | |
(Eq k, Eq e) => Eq (TkRecord k e) # | |