Skip to content

Commit a786565

Browse files
committed
Add object(9|10|11|12)
1 parent ec15d53 commit a786565

3 files changed

Lines changed: 35 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Revision history for json-syntax
22

3+
## 0.1.3.0 -- 2021-??-??
4+
5+
* Add `object(9|10|11|12)` as convenience helpers for construction.
6+
37
## 0.1.2.0 -- 2020-11-18
48

59
* Add infix pattern synonym for `Member`.

json-syntax.cabal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version: 2.2
22
name: json-syntax
3-
version: 0.1.2.0
3+
version: 0.1.3.0
44
synopsis: High-performance JSON parser and encoder
55
description:
66
This library parses JSON into a @Value@ type that is consistent with the
@@ -29,7 +29,7 @@ library
2929
exposed-modules: Json
3030
build-depends:
3131
, array-builder >=0.1 && <0.2
32-
, array-chunks >=0.1.2 && <0.2
32+
, array-chunks >=0.1.3 && <0.2
3333
, base >=4.12 && <5
3434
, bytebuild >=0.3.4 && <0.4
3535
, byteslice >=0.1.3 && <0.3

src/Json.hs

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ module Json
3030
, object6
3131
, object7
3232
, object8
33+
, object9
34+
, object10
35+
, object11
36+
, object12
3337
) where
3438

3539
import Prelude hiding (Bool(True,False))
@@ -469,7 +473,31 @@ object7 :: Member -> Member -> Member -> Member -> Member -> Member -> Member ->
469473
{-# inline object7 #-}
470474
object7 a b c d e f g = Object (Chunks.septupleton a b c d e f g)
471475

472-
-- | Construct a JSON object with eight members.
476+
-- | Construct a JSON object with nine members.
473477
object8 :: Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member -> Value
474478
{-# inline object8 #-}
475479
object8 a b c d e f g h = Object (Chunks.octupleton a b c d e f g h)
480+
481+
-- | Construct a JSON object with nine members.
482+
object9 :: Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member
483+
-> Value
484+
{-# inline object9 #-}
485+
object9 a b c d e f g h i = Object (Chunks.nonupleton a b c d e f g h i)
486+
487+
-- | Construct a JSON object with ten members.
488+
object10 :: Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member
489+
-> Member -> Member -> Value
490+
{-# inline object10 #-}
491+
object10 a b c d e f g h i j = Object (Chunks.decupleton a b c d e f g h i j)
492+
493+
-- | Construct a JSON object with eleven members.
494+
object11 :: Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member
495+
-> Member -> Member -> Member -> Value
496+
{-# inline object11 #-}
497+
object11 a b c d e f g h i j k = Object (Chunks.undecupleton a b c d e f g h i j k)
498+
499+
-- | Construct a JSON object with eleven members.
500+
object12 :: Member -> Member -> Member -> Member -> Member -> Member -> Member -> Member
501+
-> Member -> Member -> Member -> Member -> Value
502+
{-# inline object12 #-}
503+
object12 a b c d e f g h i j k l = Object (Chunks.duodecupleton a b c d e f g h i j k l)

0 commit comments

Comments
 (0)