data-object-0.2.0.1: Represent hierachichal structures, called objects in JSON.

Data.Object.Base

Contents

Description

The core of this package is the Object data type, which is used for handling scalars, sequences and mappings in a nested manner. This is the same structure used in JSON or Yaml data.

The Object data type is polymorphic in its keys and values. Submodules within this package provide more concrete datatypes, such as a String Object and a specialized scalar type.

Besides the Object data type, there are utility functions and type classes for converting objects around. Care has been taken to avoid any overloaded instances for these type classes.

Synopsis

Object data type

data Object key val Source

Can represent nested values as scalars, sequences and mappings. A sequence is synonymous with a list, while a mapping is synonymous with a list of pairs.

Note that instances of standard library type classes for this data type leave the key untouched while altering the value. For example, the Functor instance defines fmap to be synonymous with mapValues.

Constructors

Mapping [(key, Object key val)] 
Sequence [Object key val] 
Scalar val 

Instances

Typeable2 Object 
ConvertSuccess Bool (Object String String) 
ConvertSuccess Bool (Object Text Text) 
ConvertSuccess Int (Object String String) 
ConvertSuccess Int (Object Text Text) 
ConvertSuccess Rational (Object String String) 
ConvertSuccess Rational (Object Text Text) 
ConvertSuccess String (Object String String) 
ConvertSuccess String (Object Text Text) 
ConvertSuccess ByteString (Object Text Text) 
ConvertSuccess ByteString (Object Text Text) 
ConvertSuccess Text (Object Text Text) 
ConvertSuccess Text (Object Text Text) 
ConvertSuccess Day (Object String String) 
ConvertSuccess Day (Object Text Text) 
Monad (Object key) 
Functor (Object key) 
Applicative (Object key) 
Foldable (Object key) 
Traversable (Object key) 
ConvertSuccess [Bool] (Object String String) 
ConvertSuccess [Bool] (Object Text Text) 
ConvertSuccess [Int] (Object String String) 
ConvertSuccess [Int] (Object Text Text) 
ConvertSuccess [Rational] (Object String String) 
ConvertSuccess [Rational] (Object Text Text) 
ConvertSuccess [String] (Object String String) 
ConvertSuccess [String] (Object Text Text) 
ConvertSuccess [(String, Bool)] (Object String String) 
ConvertSuccess [(String, Bool)] (Object Text Text) 
ConvertSuccess [(String, Int)] (Object String String) 
ConvertSuccess [(String, Int)] (Object Text Text) 
ConvertSuccess [(String, Rational)] (Object String String) 
ConvertSuccess [(String, Rational)] (Object Text Text) 
ConvertSuccess [(String, String)] (Object String String) 
ConvertSuccess [(String, String)] (Object Text Text) 
ConvertSuccess [(String, ByteString)] (Object Text Text) 
ConvertSuccess [(String, ByteString)] (Object Text Text) 
ConvertSuccess [(String, Text)] (Object Text Text) 
ConvertSuccess [(String, Text)] (Object Text Text) 
ConvertSuccess [(String, Day)] (Object String String) 
ConvertSuccess [(String, Day)] (Object Text Text) 
ConvertSuccess [(String, Object String Bool)] (Object String String) 
ConvertSuccess [(String, Object String Bool)] (Object Text Text) 
ConvertSuccess [(String, Object String Int)] (Object String String) 
ConvertSuccess [(String, Object String Int)] (Object Text Text) 
ConvertSuccess [(String, Object String Rational)] (Object String String) 
ConvertSuccess [(String, Object String Rational)] (Object Text Text) 
ConvertSuccess [(String, Object String String)] (Object String String) 
ConvertSuccess [(String, Object String String)] (Object Text Text) 
ConvertSuccess [(String, Object String ByteString)] (Object Text Text) 
ConvertSuccess [(String, Object String ByteString)] (Object Text Text) 
ConvertSuccess [(String, Object String Text)] (Object Text Text) 
ConvertSuccess [(String, Object String Text)] (Object Text Text) 
ConvertSuccess [(String, Object String Day)] (Object String String) 
ConvertSuccess [(String, Object String Day)] (Object Text Text) 
ConvertSuccess [(String, Object Text Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Bool)] (Object Text Text) 
ConvertSuccess [(ByteString, Int)] (Object Text Text) 
ConvertSuccess [(ByteString, Rational)] (Object Text Text) 
ConvertSuccess [(ByteString, String)] (Object Text Text) 
ConvertSuccess [(ByteString, ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Day)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Bool)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Int)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Rational)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString String)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Day)] (Object Text Text) 
ConvertSuccess [(ByteString, Object Text Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Bool)] (Object Text Text) 
ConvertSuccess [(ByteString, Int)] (Object Text Text) 
ConvertSuccess [(ByteString, Rational)] (Object Text Text) 
ConvertSuccess [(ByteString, String)] (Object Text Text) 
ConvertSuccess [(ByteString, ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Day)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Bool)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Int)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Rational)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString String)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString ByteString)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Text)] (Object Text Text) 
ConvertSuccess [(ByteString, Object ByteString Day)] (Object Text Text) 
ConvertSuccess [(ByteString, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Bool)] (Object Text Text) 
ConvertSuccess [(Text, Int)] (Object Text Text) 
ConvertSuccess [(Text, Rational)] (Object Text Text) 
ConvertSuccess [(Text, String)] (Object Text Text) 
ConvertSuccess [(Text, ByteString)] (Object Text Text) 
ConvertSuccess [(Text, ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Text)] (Object Text Text) 
ConvertSuccess [(Text, Text)] (Object Text Text) 
ConvertSuccess [(Text, Day)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Bool)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Int)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Rational)] (Object Text Text) 
ConvertSuccess [(Text, Object Text String)] (Object Text Text) 
ConvertSuccess [(Text, Object Text ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Object Text ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Day)] (Object Text Text) 
ConvertSuccess [(Text, Bool)] (Object Text Text) 
ConvertSuccess [(Text, Int)] (Object Text Text) 
ConvertSuccess [(Text, Rational)] (Object Text Text) 
ConvertSuccess [(Text, String)] (Object Text Text) 
ConvertSuccess [(Text, ByteString)] (Object Text Text) 
ConvertSuccess [(Text, ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Text)] (Object Text Text) 
ConvertSuccess [(Text, Text)] (Object Text Text) 
ConvertSuccess [(Text, Day)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Bool)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Int)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Rational)] (Object Text Text) 
ConvertSuccess [(Text, Object Text String)] (Object Text Text) 
ConvertSuccess [(Text, Object Text ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Object Text ByteString)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Text)] (Object Text Text) 
ConvertSuccess [(Text, Object Text Day)] (Object Text Text) 
ConvertSuccess [ByteString] (Object Text Text) 
ConvertSuccess [ByteString] (Object Text Text) 
ConvertSuccess [Text] (Object Text Text) 
ConvertSuccess [Text] (Object Text Text) 
ConvertSuccess [Day] (Object String String) 
ConvertSuccess [Day] (Object Text Text) 
ConvertSuccess [Object String Bool] (Object String String) 
ConvertSuccess [Object String Bool] (Object Text Text) 
ConvertSuccess [Object String Int] (Object String String) 
ConvertSuccess [Object String Int] (Object Text Text) 
ConvertSuccess [Object String Rational] (Object String String) 
ConvertSuccess [Object String Rational] (Object Text Text) 
ConvertSuccess [Object String String] (Object String String) 
ConvertSuccess [Object String String] (Object Text Text) 
ConvertSuccess [Object String ByteString] (Object Text Text) 
ConvertSuccess [Object String ByteString] (Object Text Text) 
ConvertSuccess [Object String Text] (Object Text Text) 
ConvertSuccess [Object String Text] (Object Text Text) 
ConvertSuccess [Object String Day] (Object String String) 
ConvertSuccess [Object String Day] (Object Text Text) 
ConvertSuccess [Object ByteString Bool] (Object Text Text) 
ConvertSuccess [Object ByteString Int] (Object Text Text) 
ConvertSuccess [Object ByteString Rational] (Object Text Text) 
ConvertSuccess [Object ByteString String] (Object Text Text) 
ConvertSuccess [Object ByteString ByteString] (Object Text Text) 
ConvertSuccess [Object ByteString ByteString] (Object Text Text) 
ConvertSuccess [Object ByteString Text] (Object Text Text) 
ConvertSuccess [Object ByteString Text] (Object Text Text) 
ConvertSuccess [Object ByteString Day] (Object Text Text) 
ConvertSuccess [Object ByteString Bool] (Object Text Text) 
ConvertSuccess [Object ByteString Int] (Object Text Text) 
ConvertSuccess [Object ByteString Rational] (Object Text Text) 
ConvertSuccess [Object ByteString String] (Object Text Text) 
ConvertSuccess [Object ByteString ByteString] (Object Text Text) 
ConvertSuccess [Object ByteString ByteString] (Object Text Text) 
ConvertSuccess [Object ByteString Text] (Object Text Text) 
ConvertSuccess [Object ByteString Text] (Object Text Text) 
ConvertSuccess [Object ByteString Day] (Object Text Text) 
ConvertSuccess [Object Text Bool] (Object Text Text) 
ConvertSuccess [Object Text Int] (Object Text Text) 
ConvertSuccess [Object Text Rational] (Object Text Text) 
ConvertSuccess [Object Text String] (Object Text Text) 
ConvertSuccess [Object Text ByteString] (Object Text Text) 
ConvertSuccess [Object Text ByteString] (Object Text Text) 
ConvertSuccess [Object Text Text] (Object Text Text) 
ConvertSuccess [Object Text Text] (Object Text Text) 
ConvertSuccess [Object Text Day] (Object Text Text) 
ConvertSuccess [Object Text Bool] (Object Text Text) 
ConvertSuccess [Object Text Int] (Object Text Text) 
ConvertSuccess [Object Text Rational] (Object Text Text) 
ConvertSuccess [Object Text String] (Object Text Text) 
ConvertSuccess [Object Text ByteString] (Object Text Text) 
ConvertSuccess [Object Text ByteString] (Object Text Text) 
ConvertSuccess [Object Text Text] (Object Text Text) 
ConvertSuccess [Object Text Text] (Object Text Text) 
ConvertSuccess [Object Text Day] (Object Text Text) 
(Eq key, Eq val) => Eq (Object key val) 
(Data key, Data val) => Data (Object key val) 
(Show key, Show val) => Show (Object key val) 
ConvertAttempt (Object String String) Bool 
ConvertAttempt (Object String String) Int 
ConvertAttempt (Object String String) Rational 
ConvertAttempt (Object String String) String 
ConvertAttempt (Object String String) Day 
ConvertAttempt (Object Text Text) Bool 
ConvertAttempt (Object Text Text) Int 
ConvertAttempt (Object Text Text) Rational 
ConvertAttempt (Object Text Text) String 
ConvertAttempt (Object Text Text) ByteString 
ConvertAttempt (Object Text Text) ByteString 
ConvertAttempt (Object Text Text) Text 
ConvertAttempt (Object Text Text) Text 
ConvertAttempt (Object Text Text) Day 
ConvertAttempt (Object String String) [Bool] 
ConvertAttempt (Object String String) [Int] 
ConvertAttempt (Object String String) [Rational] 
ConvertAttempt (Object String String) [String] 
ConvertAttempt (Object String String) [(String, Bool)] 
ConvertAttempt (Object String String) [(String, Int)] 
ConvertAttempt (Object String String) [(String, Rational)] 
ConvertAttempt (Object String String) [(String, String)] 
ConvertAttempt (Object String String) [(String, Day)] 
ConvertAttempt (Object String String) [(String, Object String Bool)] 
ConvertAttempt (Object String String) [(String, Object String Int)] 
ConvertAttempt (Object String String) [(String, Object String Rational)] 
ConvertAttempt (Object String String) [(String, Object String String)] 
ConvertAttempt (Object String String) [(String, Object String Day)] 
ConvertAttempt (Object String String) [Day] 
ConvertAttempt (Object String String) [Object String Bool] 
ConvertAttempt (Object String String) [Object String Int] 
ConvertAttempt (Object String String) [Object String Rational] 
ConvertAttempt (Object String String) [Object String String] 
ConvertAttempt (Object String String) [Object String Day] 
ConvertAttempt (Object Text Text) [Bool] 
ConvertAttempt (Object Text Text) [Int] 
ConvertAttempt (Object Text Text) [Rational] 
ConvertAttempt (Object Text Text) [String] 
ConvertAttempt (Object Text Text) [(String, Bool)] 
ConvertAttempt (Object Text Text) [(String, Int)] 
ConvertAttempt (Object Text Text) [(String, Rational)] 
ConvertAttempt (Object Text Text) [(String, String)] 
ConvertAttempt (Object Text Text) [(String, ByteString)] 
ConvertAttempt (Object Text Text) [(String, ByteString)] 
ConvertAttempt (Object Text Text) [(String, Text)] 
ConvertAttempt (Object Text Text) [(String, Text)] 
ConvertAttempt (Object Text Text) [(String, Day)] 
ConvertAttempt (Object Text Text) [(String, Object String Bool)] 
ConvertAttempt (Object Text Text) [(String, Object String Int)] 
ConvertAttempt (Object Text Text) [(String, Object String Rational)] 
ConvertAttempt (Object Text Text) [(String, Object String String)] 
ConvertAttempt (Object Text Text) [(String, Object String ByteString)] 
ConvertAttempt (Object Text Text) [(String, Object String ByteString)] 
ConvertAttempt (Object Text Text) [(String, Object String Text)] 
ConvertAttempt (Object Text Text) [(String, Object String Text)] 
ConvertAttempt (Object Text Text) [(String, Object String Day)] 
ConvertAttempt (Object Text Text) [(String, Object Text Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Bool)] 
ConvertAttempt (Object Text Text) [(ByteString, Int)] 
ConvertAttempt (Object Text Text) [(ByteString, Rational)] 
ConvertAttempt (Object Text Text) [(ByteString, String)] 
ConvertAttempt (Object Text Text) [(ByteString, ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Day)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Bool)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Int)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Rational)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString String)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Day)] 
ConvertAttempt (Object Text Text) [(ByteString, Object Text Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Bool)] 
ConvertAttempt (Object Text Text) [(ByteString, Int)] 
ConvertAttempt (Object Text Text) [(ByteString, Rational)] 
ConvertAttempt (Object Text Text) [(ByteString, String)] 
ConvertAttempt (Object Text Text) [(ByteString, ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Day)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Bool)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Int)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Rational)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString String)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString ByteString)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Text)] 
ConvertAttempt (Object Text Text) [(ByteString, Object ByteString Day)] 
ConvertAttempt (Object Text Text) [(ByteString, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Bool)] 
ConvertAttempt (Object Text Text) [(Text, Int)] 
ConvertAttempt (Object Text Text) [(Text, Rational)] 
ConvertAttempt (Object Text Text) [(Text, String)] 
ConvertAttempt (Object Text Text) [(Text, ByteString)] 
ConvertAttempt (Object Text Text) [(Text, ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Text)] 
ConvertAttempt (Object Text Text) [(Text, Text)] 
ConvertAttempt (Object Text Text) [(Text, Day)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Bool)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Int)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Rational)] 
ConvertAttempt (Object Text Text) [(Text, Object Text String)] 
ConvertAttempt (Object Text Text) [(Text, Object Text ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Object Text ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Day)] 
ConvertAttempt (Object Text Text) [(Text, Bool)] 
ConvertAttempt (Object Text Text) [(Text, Int)] 
ConvertAttempt (Object Text Text) [(Text, Rational)] 
ConvertAttempt (Object Text Text) [(Text, String)] 
ConvertAttempt (Object Text Text) [(Text, ByteString)] 
ConvertAttempt (Object Text Text) [(Text, ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Text)] 
ConvertAttempt (Object Text Text) [(Text, Text)] 
ConvertAttempt (Object Text Text) [(Text, Day)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Bool)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Int)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Rational)] 
ConvertAttempt (Object Text Text) [(Text, Object Text String)] 
ConvertAttempt (Object Text Text) [(Text, Object Text ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Object Text ByteString)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Text)] 
ConvertAttempt (Object Text Text) [(Text, Object Text Day)] 
ConvertAttempt (Object Text Text) [ByteString] 
ConvertAttempt (Object Text Text) [ByteString] 
ConvertAttempt (Object Text Text) [Text] 
ConvertAttempt (Object Text Text) [Text] 
ConvertAttempt (Object Text Text) [Day] 
ConvertAttempt (Object Text Text) [Object String Bool] 
ConvertAttempt (Object Text Text) [Object String Int] 
ConvertAttempt (Object Text Text) [Object String Rational] 
ConvertAttempt (Object Text Text) [Object String String] 
ConvertAttempt (Object Text Text) [Object String ByteString] 
ConvertAttempt (Object Text Text) [Object String ByteString] 
ConvertAttempt (Object Text Text) [Object String Text] 
ConvertAttempt (Object Text Text) [Object String Text] 
ConvertAttempt (Object Text Text) [Object String Day] 
ConvertAttempt (Object Text Text) [Object ByteString Bool] 
ConvertAttempt (Object Text Text) [Object ByteString Int] 
ConvertAttempt (Object Text Text) [Object ByteString Rational] 
ConvertAttempt (Object Text Text) [Object ByteString String] 
ConvertAttempt (Object Text Text) [Object ByteString ByteString] 
ConvertAttempt (Object Text Text) [Object ByteString ByteString] 
ConvertAttempt (Object Text Text) [Object ByteString Text] 
ConvertAttempt (Object Text Text) [Object ByteString Text] 
ConvertAttempt (Object Text Text) [Object ByteString Day] 
ConvertAttempt (Object Text Text) [Object ByteString Bool] 
ConvertAttempt (Object Text Text) [Object ByteString Int] 
ConvertAttempt (Object Text Text) [Object ByteString Rational] 
ConvertAttempt (Object Text Text) [Object ByteString String] 
ConvertAttempt (Object Text Text) [Object ByteString ByteString] 
ConvertAttempt (Object Text Text) [Object ByteString ByteString] 
ConvertAttempt (Object Text Text) [Object ByteString Text] 
ConvertAttempt (Object Text Text) [Object ByteString Text] 
ConvertAttempt (Object Text Text) [Object ByteString Day] 
ConvertAttempt (Object Text Text) [Object Text Bool] 
ConvertAttempt (Object Text Text) [Object Text Int] 
ConvertAttempt (Object Text Text) [Object Text Rational] 
ConvertAttempt (Object Text Text) [Object Text String] 
ConvertAttempt (Object Text Text) [Object Text ByteString] 
ConvertAttempt (Object Text Text) [Object Text ByteString] 
ConvertAttempt (Object Text Text) [Object Text Text] 
ConvertAttempt (Object Text Text) [Object Text Text] 
ConvertAttempt (Object Text Text) [Object Text Day] 
ConvertAttempt (Object Text Text) [Object Text Bool] 
ConvertAttempt (Object Text Text) [Object Text Int] 
ConvertAttempt (Object Text Text) [Object Text Rational] 
ConvertAttempt (Object Text Text) [Object Text String] 
ConvertAttempt (Object Text Text) [Object Text ByteString] 
ConvertAttempt (Object Text Text) [Object Text ByteString] 
ConvertAttempt (Object Text Text) [Object Text Text] 
ConvertAttempt (Object Text Text) [Object Text Text] 
ConvertAttempt (Object Text Text) [Object Text Day] 
ConvertAttempt (Object String String) (Object String Bool) 
ConvertAttempt (Object String String) (Object String Int) 
ConvertAttempt (Object String String) (Object String Rational) 
ConvertAttempt (Object String String) (Object String Day) 
ConvertAttempt (Object Text Text) (Object String Bool) 
ConvertAttempt (Object Text Text) (Object String Int) 
ConvertAttempt (Object Text Text) (Object String Rational) 
ConvertAttempt (Object Text Text) (Object String String) 
ConvertAttempt (Object Text Text) (Object String ByteString) 
ConvertAttempt (Object Text Text) (Object String ByteString) 
ConvertAttempt (Object Text Text) (Object String Text) 
ConvertAttempt (Object Text Text) (Object String Text) 
ConvertAttempt (Object Text Text) (Object String Day) 
ConvertAttempt (Object Text Text) (Object ByteString Bool) 
ConvertAttempt (Object Text Text) (Object ByteString Int) 
ConvertAttempt (Object Text Text) (Object ByteString Rational) 
ConvertAttempt (Object Text Text) (Object ByteString String) 
ConvertAttempt (Object Text Text) (Object ByteString ByteString) 
ConvertAttempt (Object Text Text) (Object ByteString ByteString) 
ConvertAttempt (Object Text Text) (Object ByteString Text) 
ConvertAttempt (Object Text Text) (Object ByteString Text) 
ConvertAttempt (Object Text Text) (Object ByteString Day) 
ConvertAttempt (Object Text Text) (Object ByteString Bool) 
ConvertAttempt (Object Text Text) (Object ByteString Int) 
ConvertAttempt (Object Text Text) (Object ByteString Rational) 
ConvertAttempt (Object Text Text) (Object ByteString String) 
ConvertAttempt (Object Text Text) (Object ByteString ByteString) 
ConvertAttempt (Object Text Text) (Object ByteString ByteString) 
ConvertAttempt (Object Text Text) (Object ByteString Text) 
ConvertAttempt (Object Text Text) (Object ByteString Text) 
ConvertAttempt (Object Text Text) (Object ByteString Day) 
ConvertAttempt (Object Text Text) (Object Text Bool) 
ConvertAttempt (Object Text Text) (Object Text Int) 
ConvertAttempt (Object Text Text) (Object Text Rational) 
ConvertAttempt (Object Text Text) (Object Text String) 
ConvertAttempt (Object Text Text) (Object Text ByteString) 
ConvertAttempt (Object Text Text) (Object Text ByteString) 
ConvertAttempt (Object Text Text) (Object Text Text) 
ConvertAttempt (Object Text Text) (Object Text Day) 
ConvertAttempt (Object Text Text) (Object Text Bool) 
ConvertAttempt (Object Text Text) (Object Text Int) 
ConvertAttempt (Object Text Text) (Object Text Rational) 
ConvertAttempt (Object Text Text) (Object Text String) 
ConvertAttempt (Object Text Text) (Object Text ByteString) 
ConvertAttempt (Object Text Text) (Object Text ByteString) 
ConvertAttempt (Object Text Text) (Object Text Text) 
ConvertAttempt (Object Text Text) (Object Text Text) 
ConvertAttempt (Object Text Text) (Object Text Day) 
ConvertSuccess (Object String Bool) (Object String String) 
ConvertSuccess (Object String Bool) (Object Text Text) 
ConvertSuccess (Object String Int) (Object String String) 
ConvertSuccess (Object String Int) (Object Text Text) 
ConvertSuccess (Object String Rational) (Object String String) 
ConvertSuccess (Object String Rational) (Object Text Text) 
ConvertSuccess (Object String String) (Object Text Text) 
ConvertSuccess (Object String ByteString) (Object Text Text) 
ConvertSuccess (Object String ByteString) (Object Text Text) 
ConvertSuccess (Object String Text) (Object Text Text) 
ConvertSuccess (Object String Text) (Object Text Text) 
ConvertSuccess (Object String Day) (Object String String) 
ConvertSuccess (Object String Day) (Object Text Text) 
ConvertSuccess (Object ByteString Bool) (Object Text Text) 
ConvertSuccess (Object ByteString Int) (Object Text Text) 
ConvertSuccess (Object ByteString Rational) (Object Text Text) 
ConvertSuccess (Object ByteString String) (Object Text Text) 
ConvertSuccess (Object ByteString ByteString) (Object Text Text) 
ConvertSuccess (Object ByteString ByteString) (Object Text Text) 
ConvertSuccess (Object ByteString Text) (Object Text Text) 
ConvertSuccess (Object ByteString Text) (Object Text Text) 
ConvertSuccess (Object ByteString Day) (Object Text Text) 
ConvertSuccess (Object ByteString Bool) (Object Text Text) 
ConvertSuccess (Object ByteString Int) (Object Text Text) 
ConvertSuccess (Object ByteString Rational) (Object Text Text) 
ConvertSuccess (Object ByteString String) (Object Text Text) 
ConvertSuccess (Object ByteString ByteString) (Object Text Text) 
ConvertSuccess (Object ByteString ByteString) (Object Text Text) 
ConvertSuccess (Object ByteString Text) (Object Text Text) 
ConvertSuccess (Object ByteString Text) (Object Text Text) 
ConvertSuccess (Object ByteString Day) (Object Text Text) 
ConvertSuccess (Object Text Bool) (Object Text Text) 
ConvertSuccess (Object Text Int) (Object Text Text) 
ConvertSuccess (Object Text Rational) (Object Text Text) 
ConvertSuccess (Object Text String) (Object Text Text) 
ConvertSuccess (Object Text ByteString) (Object Text Text) 
ConvertSuccess (Object Text ByteString) (Object Text Text) 
ConvertSuccess (Object Text Text) (Object Text Text) 
ConvertSuccess (Object Text Day) (Object Text Text) 
ConvertSuccess (Object Text Bool) (Object Text Text) 
ConvertSuccess (Object Text Int) (Object Text Text) 
ConvertSuccess (Object Text Rational) (Object Text Text) 
ConvertSuccess (Object Text String) (Object Text Text) 
ConvertSuccess (Object Text ByteString) (Object Text Text) 
ConvertSuccess (Object Text ByteString) (Object Text Text) 
ConvertSuccess (Object Text Text) (Object Text Text) 
ConvertSuccess (Object Text Text) (Object Text Text) 
ConvertSuccess (Object Text Day) (Object Text Text) 

Basic mapping of keys and values

mapKeys :: (keyIn -> keyOut) -> Object keyIn val -> Object keyOut valSource

Apply some conversion to the keys of an Object, leaving the values unchanged.

mapValues :: (valIn -> valOut) -> Object key valIn -> Object key valOutSource

Apply some conversion to the values of an Object, leaving the keys unchanged. This is equivalent to fmap.

mapKeysValues :: (keyIn -> keyOut) -> (valIn -> valOut) -> Object keyIn valIn -> Object keyOut valOutSource

Apply a conversion to both the keys and values of an Object.

mapKeysValuesA :: Applicative f => (keyIn -> f keyOut) -> (valIn -> f valOut) -> Object keyIn valIn -> f (Object keyOut valOut)Source

Apply an Applicative conversion to both the keys and values of an Object.

mapKeysValuesM :: Monad m => (keyIn -> m keyOut) -> (valIn -> m valOut) -> Object keyIn valIn -> m (Object keyOut valOut)Source

The same as mapKeysValuesA, but using a Monad since some people are more comfortable with Monads and not all Monads are Applicative.

Convert entires objects

Extracting underlying values

data ObjectExtractError Source

An error value returned when an unexpected node is encountered, eg you were expecting a Scalar and found a Mapping.

fromScalar :: MonadFailure ObjectExtractError m => Object k v -> m vSource

Extra a scalar from the input, failing if the input is a sequence or mapping.

fromSequence :: MonadFailure ObjectExtractError m => Object k v -> m [Object k v]Source

Extra a sequence from the input, failing if the input is a scalar or mapping.

fromMapping :: MonadFailure ObjectExtractError m => Object k v -> m [(k, Object k v)]Source

Extra a mapping from the input, failing if the input is a scalar or sequence.

Common object conversions

sTO :: ConvertSuccess v v' => v -> Object k v'Source

sFO :: ConvertAttempt v' v => Object k v' -> Attempt vSource

lTO :: ConvertSuccess v v' => [v] -> Object k v'Source

lFO :: ConvertAttempt v' v => Object k v' -> Attempt [v]Source

mTO :: (ConvertSuccess k k', ConvertSuccess v v') => [(k, v)] -> Object k' v'Source

mFO :: (ConvertAttempt k' k, ConvertAttempt v' v) => Object k' v' -> Attempt [(k, v)]Source

olTO :: ConvertSuccess x (Object k v) => [x] -> Object k vSource

olFO :: ConvertAttempt (Object k v) x => Object k v -> Attempt [x]Source

omTO :: (ConvertSuccess k' k, ConvertSuccess x (Object k v)) => [(k', x)] -> Object k vSource

omFO :: (ConvertAttempt k k', ConvertAttempt (Object k v) x) => Object k v -> Attempt [(k', x)]Source

Automatic deriving of instances

deriveSuccessConvsSource

Arguments

:: Name

dest key

-> Name

dest value

-> [Name]

source keys

-> [Name]

source values

-> Q [Dec] 

Helper functions

lookupObject :: (ConvertSuccess k' k, ConvertAttempt (Object k v) o, Typeable k, Typeable v, Show k, Eq k) => k' -> [(k, Object k v)] -> Attempt oSource

An equivalent of lookup to deal specifically with maps of Objects. In particular, it will:

  1. Automatically convert the lookup key as necesary. For example- assuming you have the appropriate ConvertSuccess instances, you could lookup an Int in a map that has String keys.
  2. Return the result in an Attempt, not Maybe. This is especially useful when creating FromObject instances.
  3. Show a more useful error message. Since this function requires the key to be Showable, the fail message states what key was not found.
  4. Calls fromObject automatically, so you get out the value type that you want, not just an Object.

Re-export