@@ -67,7 +67,7 @@ mainTest = do
69 assertRight (decodeJson qualifiedName)
69 assertRight (decodeJson qualifiedName)
70− (QualifiedName { moduleName: ["Prim"]
70+ (QualifiedName { moduleNameParts: ["Prim"]
71 , name: "Type"
71 , name: "Type"
@@ -87,7 +87,7 @@ mainTest = do
89 assertRight (decodeJson namedKind)
89 assertRight (decodeJson namedKind)
90− (NamedKind $ QualifiedName { moduleName: ["Prim"]
90+ (NamedKind $ QualifiedName { moduleNameParts: ["Prim"]
91 , name: "Type"
91 , name: "Type"
@@ -111,7 +111,7 @@ mainTest = do
113 assertRight (decodeJson row)
113 assertRight (decodeJson row)
114− (Row $ NamedKind $ QualifiedName { moduleName: ["Prim"]
114+ (Row $ NamedKind $ QualifiedName { moduleNameParts: ["Prim"]
115 , name: "Type"
115 , name: "Type"
@@ -154,11 +154,11 @@ mainTest = do
156 assertRight (decodeJson funKind)
156 assertRight (decodeJson funKind)
157− (FunKind (Row $ NamedKind $ QualifiedName { moduleName: ["Prim"]
157+ (FunKind (Row $ NamedKind $ QualifiedName { moduleNameParts: ["Prim"]
158 , name: "Type"
158 , name: "Type"
161− (Row $ NamedKind $ QualifiedName { moduleName: ["Prim"]
161+ (Row $ NamedKind $ QualifiedName { moduleNameParts: ["Prim"]
162 , name: "Type"
162 , name: "Type"
@@ -181,7 +181,7 @@ mainTest = do
183 assertRight (decodeJson constraint)
183 assertRight (decodeJson constraint)
184− (Constraint { constraintClass: QualifiedName { moduleName: ["Prim"]
184+ (Constraint { constraintClass: QualifiedName { moduleNameParts: ["Prim"]
185 , name: "Partial"
185 , name: "Partial"
187 , constraintArgs: []
187 , constraintArgs: []
@@ -230,7 +230,7 @@ mainTest = do
231 assertRight (decodeJson typeApp1) $
231 assertRight (decodeJson typeApp1) $
233− (TypeConstructor (QualifiedName { moduleName:
233+ (TypeConstructor (QualifiedName { moduleNameParts:
234 [ "Control"
234 [ "Control"
235 , "Monad"
235 , "Monad"
@@ -256,7 +256,7 @@ mainTest = do
258 assertRight (decodeJson typeOp) $
258 assertRight (decodeJson typeOp) $
259− TypeOp $ QualifiedName { moduleName: [ "Data", "NaturalTransformation" ]
259+ TypeOp $ QualifiedName { moduleNameParts: [ "Data", "NaturalTransformation" ]
260 , name: "~>"
260 , name: "~>"
@@ -293,7 +293,7 @@ mainTest = do
294 assertRight (decodeJson binaryNoParens) $
294 assertRight (decodeJson binaryNoParens) $
295 BinaryNoParensType
295 BinaryNoParensType
296− (TypeOp $ QualifiedName { moduleName: ["Data", "NaturalTransformation"], name: "~>" })
296+ (TypeOp $ QualifiedName { moduleNameParts: ["Data", "NaturalTransformation"], name: "~>" })
297 (TypeVar "m")
297 (TypeVar "m")
298 (TypeVar "n")
298 (TypeVar "n")
@@ -335,14 +335,14 @@ mainTest = do
335 assertRight (decodeJson parensInType) $
335 assertRight (decodeJson parensInType) $
336 ParensInType $
336 ParensInType $
338− (TypeConstructor (QualifiedName { moduleName:
338+ (TypeConstructor (QualifiedName { moduleNameParts:
340 , "Maybe"
340 , "Maybe"
342 name: "Maybe"
342 name: "Maybe"
345− (TypeConstructor (QualifiedName { moduleName:
345+ (TypeConstructor (QualifiedName { moduleNameParts:
348 name: "String"
348 name: "String"
@@ -389,7 +389,7 @@ mainTest = do
389 assertRight (decodeJson rcons) $
389 assertRight (decodeJson rcons) $
392− (TypeApp (TypeConstructor $ QualifiedName { moduleName: [ "Data", "Symbol" ], name: "SProxy" })
392+ (TypeApp (TypeConstructor $ QualifiedName { moduleNameParts: [ "Data", "Symbol" ], name: "SProxy" })
393 (TypeVar "t"))
393 (TypeVar "t"))
@@ -545,8 +545,8 @@ mainTest = do
546 assertRight (decodeJson forallJson) $
546 assertRight (decodeJson forallJson) $
547 ForAll "f"
547 ForAll "f"
548− (Just (FunKind (NamedKind (QualifiedName { moduleName: ["Prim","RowList"], name: "RowList" })) (NamedKind (QualifiedName { moduleName: ["Prim"], name: "Type" }))))
548+ (Just (FunKind (NamedKind (QualifiedName { moduleNameParts: ["Prim","RowList"], name: "RowList" })) (NamedKind (QualifiedName { moduleNameParts: ["Prim"], name: "Type" }))))
549− (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Prim"], name: "Function" })) (TypeApp (TypeVar "f") (TypeVar "l"))) (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Data","List","Types"], name: "List" })) (ParensInType (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Data","Tuple"], name: "Tuple" })) (TypeConstructor (QualifiedName { moduleName: ["Prim"], name: "String" }))) (TypeConstructor (QualifiedName { moduleName: ["Prim"], name: "String" }))))))
549+ (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Prim"], name: "Function" })) (TypeApp (TypeVar "f") (TypeVar "l"))) (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Data","List","Types"], name: "List" })) (ParensInType (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Data","Tuple"], name: "Tuple" })) (TypeConstructor (QualifiedName { moduleNameParts: ["Prim"], name: "String" }))) (TypeConstructor (QualifiedName { moduleNameParts: ["Prim"], name: "String" }))))))
@@ -558,7 +558,7 @@ mainTest = do
558{"annotation":[],"tag":"ForAll","contents":["o",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ForAll","contents":["l",{"annotation":[],"tag":"ConstrainedType","contents":[{"constraintAnn":[],"constraintClass":[["Type","Data","Boolean"],"And"],"constraintArgs":[{"annotation":[],"tag":"TypeVar","contents":"l"},{"annotation":[],"tag":"TypeVar","contents":"r"},{"annotation":[],"tag":"TypeVar","contents":"o"}],"constraintData":null},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"l"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"o"}]}]}]}]},null]},null]},null]}
558{"annotation":[],"tag":"ForAll","contents":["o",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ForAll","contents":["l",{"annotation":[],"tag":"ConstrainedType","contents":[{"constraintAnn":[],"constraintClass":[["Type","Data","Boolean"],"And"],"constraintArgs":[{"annotation":[],"tag":"TypeVar","contents":"l"},{"annotation":[],"tag":"TypeVar","contents":"r"},{"annotation":[],"tag":"TypeVar","contents":"o"}],"constraintData":null},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"l"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Data","Boolean"],"BProxy"]},{"annotation":[],"tag":"TypeVar","contents":"o"}]}]}]}]},null]},null]},null]}
561− assertRight (decodeJson json) $ (ForAll "o" Nothing (ForAll "r" Nothing (ForAll "l" Nothing (ConstrainedType (Constraint { constraintArgs: [(TypeVar "l"),(TypeVar "r"),(TypeVar "o")], constraintClass: (QualifiedName { moduleName: ["Type","Data","Boolean"], name: "And" }) }) (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Prim"], name: "Function" })) (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "l"))) (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Prim"], name: "Function" })) (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "r"))) (TypeApp (TypeConstructor (QualifiedName { moduleName: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "o"))))))))
561+ assertRight (decodeJson json) $ (ForAll "o" Nothing (ForAll "r" Nothing (ForAll "l" Nothing (ConstrainedType (Constraint { constraintArgs: [(TypeVar "l"),(TypeVar "r"),(TypeVar "o")], constraintClass: (QualifiedName { moduleNameParts: ["Type","Data","Boolean"], name: "And" }) }) (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Prim"], name: "Function" })) (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "l"))) (TypeApp (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Prim"], name: "Function" })) (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "r"))) (TypeApp (TypeConstructor (QualifiedName { moduleNameParts: ["Type","Data","Boolean"], name: "BProxy" })) (TypeVar "o"))))))))
563 suite "Kind encoder" do
563 suite "Kind encoder" do
564 test "FunKind" do
564 test "FunKind" do
@@ -570,4 +570,4 @@ mainTest = do
572qualified :: Array String -> String -> QualifiedName
572qualified :: Array String -> String -> QualifiedName
573−qualified moduleName name = QualifiedName { moduleName, name }
573+qualified moduleNameParts name = QualifiedName { moduleNameParts, name }