- array : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Box (Parser mn
p
JSON) :->
Parser mn
p
(List JSON))
Subparser for JSON arrays, provided a subparser for smaller JSON objects
According to the RFC:
array = begin-array [ value *( value-separator value ) ] end-array
- beginArray : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())
- beginObject : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())
- endArray : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())
- endObject : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())
- member : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
Subset (Tok p)
Char =>
All (Box (Parser mn
p
JSON) :->
Parser mn
p
(String,
JSON))
Subparser for members, provided a subparser for smaller JSON objects
According to the RFC:
member = string name-separator value
- nameSeparator : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())
- object : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
Subset (Tok p)
Char =>
All (Box (Parser mn
p
JSON) :->
Parser mn
p
(List (String,
JSON)))
Subparser for JSON objects, provided a subparser for smaller JSON objects
According to the RFC:
object = begin-object [ member *( value-separator member ) ] end-object
- value : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
Subset (Tok p)
Char =>
All (Parser mn
p
JSON)
Parsing JSON values
- valueSeparator : Monad mn =>
Alternative mn =>
Inspect (Toks p)
(Tok p) =>
Eq (Tok p) =>
Subset Char
(Tok p) =>
All (Parser mn
p
())