Skip to content

Commit a27bf33

Browse files
fix: wrap fragment parse & serialize as uncurried
resolves #296 the module signature was not wrapped, and the implementation was wrapped in another fun that prevented the match in wrap_as_uncurried_fn from working as intended I also fixed a warning 53 with the @@tailcall attribute I was getting for ocaml 5.1.1, maybe I ended up with different versions of something? re-run tests
1 parent 80a7b1c commit a27bf33

File tree

61 files changed

+3451
-3865
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+3451
-3865
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ _esy
22
.merlin
33
node_modules
44
_build
5+
_opam
56
_release
67
*.byte
78
*.native

snapshot_tests/operations/expected/apollo/generate/ewert_reproduction.res.txt

Lines changed: 48 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -49,60 +49,56 @@ lastname
4949

5050
}
5151
"
52-
let parse = (
53-
(value): t => {
54-
user: {
55-
let value = (value: Raw.t).user
56-
(
57-
{
58-
id: {
59-
let value = (value: Raw.t_user).id
60-
value
61-
},
62-
firstname: {
63-
let value = (value: Raw.t_user).firstname
64-
switch Js.toOption(value) {
65-
| Some(value) => Some(value)
66-
| None => None
67-
}
68-
},
69-
lastname: {
70-
let value = (value: Raw.t_user).lastname
71-
value
72-
},
73-
}: t_user
74-
)
75-
},
76-
}: Raw.t => t
77-
)
78-
let serialize = (
79-
(value): Raw.t => {
80-
let user = {
81-
let value = (value: t).user
82-
(
83-
{
84-
let lastname = {
85-
let value = (value: t_user).lastname
86-
value
52+
let parse = (value): t => {
53+
user: {
54+
let value = (value: Raw.t).user
55+
(
56+
{
57+
id: {
58+
let value = (value: Raw.t_user).id
59+
value
60+
},
61+
firstname: {
62+
let value = (value: Raw.t_user).firstname
63+
switch Js.toOption(value) {
64+
| Some(value) => Some(value)
65+
| None => None
8766
}
88-
and firstname = {
89-
let value = (value: t_user).firstname
90-
switch value {
91-
| Some(value) => Js.Nullable.return(value)
92-
| None => Js.Nullable.null
93-
}
94-
}
95-
and id = {
96-
let value = (value: t_user).id
97-
value
67+
},
68+
lastname: {
69+
let value = (value: Raw.t_user).lastname
70+
value
71+
},
72+
}: t_user
73+
)
74+
},
75+
}
76+
let serialize = (value): Raw.t => {
77+
let user = {
78+
let value = (value: t).user
79+
(
80+
{
81+
let lastname = {
82+
let value = (value: t_user).lastname
83+
value
84+
}
85+
and firstname = {
86+
let value = (value: t_user).firstname
87+
switch value {
88+
| Some(value) => Js.Nullable.return(value)
89+
| None => Js.Nullable.null
9890
}
99-
{id, firstname, lastname}
100-
}: Raw.t_user
101-
)
102-
}
103-
{user: user}
104-
}: t => Raw.t
105-
)
91+
}
92+
and id = {
93+
let value = (value: t_user).id
94+
value
95+
}
96+
{id, firstname, lastname}
97+
}: Raw.t_user
98+
)
99+
}
100+
{user: user}
101+
}
106102
let verifyArgsAndParse = (
107103
~userId as _userId: [#NonNull_String],
108104
~fragmentName as _UserData: [#UserData],

0 commit comments

Comments
 (0)