diff --git a/tests/TestPurus.hs b/tests/TestPurus.hs index 4eaa06b0..593f250f 100644 --- a/tests/TestPurus.hs +++ b/tests/TestPurus.hs @@ -110,7 +110,7 @@ shouldPass = map (prefix ) paths "ResolvableScopeConflict", "ResolvableScopeConflict2", "ResolvableScopeConflict3", - -- "RowSyntax", + "RowSyntax", "ShadowedModuleName", "TransitiveImport" ] diff --git a/tests/purus/passing/RowSyntax/RowSyntax.purs b/tests/purus/passing/RowSyntax/RowSyntax.purs index bc175e7b..efc83dc7 100644 --- a/tests/purus/passing/RowSyntax/RowSyntax.purs +++ b/tests/purus/passing/RowSyntax/RowSyntax.purs @@ -1,7 +1,10 @@ module RowSyntax where class IsARow (r :: Row Type) -instance IsARow (r :: Row Type) +instance IsARow [hello :: String] + +class IsARow' (r :: Row Type) +instance IsARow' (r :: Row Type) data RowProxy (r :: Row Type) = RowProxy diff --git a/tests/purus/passing/TransitiveImport/Test.purs b/tests/purus/passing/TransitiveImport/Test.purs index 37a25d1e..38172717 100644 --- a/tests/purus/passing/TransitiveImport/Test.purs +++ b/tests/purus/passing/TransitiveImport/Test.purs @@ -5,5 +5,5 @@ data Unit = Unit class TestCls (a :: Type) where test :: a -> a -instance unitTestCls :: TestCls Unit where +instance TestCls Unit where test _ = Unit diff --git a/tests/purus/passing/TransitiveImport/output/Main/index.cfn b/tests/purus/passing/TransitiveImport/output/Main/index.cfn index 556dcc27..e563e1f5 100644 --- a/tests/purus/passing/TransitiveImport/output/Main/index.cfn +++ b/tests/purus/passing/TransitiveImport/output/Main/index.cfn @@ -1 +1 @@ -{"builtWith":"0.0.1","comments":[],"dataTypes":{},"decls":[{"annotation":{"meta":null,"sourceSpan":{"end":[5,15],"start":[5,3]}},"bindType":"NonRec","expression":{"abstraction":{"abstraction":{"annotation":{"meta":{"metaType":"IsForeign"},"sourceSpan":{"end":[6,18],"start":[6,12]}},"kind":"Var","type":{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,11]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":0,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,40],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,39]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":[{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":[{"annotation":[{"end":[8,48],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,46]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,45],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,49]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"value":{"identifier":"middle","moduleName":["Middle"]}},"annotation":{"meta":null,"sourceSpan":{"end":[6,23],"start":[6,12]}},"argument":{"annotation":{"meta":null,"sourceSpan":{"end":[0,0],"start":[0,0]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},"value":{"identifier":"unitTestCls","moduleName":["Test"]}},"kind":"App"},"annotation":{"meta":null,"sourceSpan":{"end":[6,23],"start":[6,12]}},"argument":{"annotation":{"meta":{"metaType":"IsForeign"},"sourceSpan":{"end":[6,23],"start":[6,19]}},"kind":"Var","type":{"annotation":[{"end":[5,13],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[5,9]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"value":{"identifier":"unit","moduleName":["Middle"]}},"kind":"App"},"identifier":"main"}],"exports":["main"],"foreign":[],"imports":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Builtin"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Middle"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Prim"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Test"]}],"moduleName":["Main"],"modulePath":"tests/purus/passing/TransitiveImport/TransitiveImport.purs","reExports":{},"sourceSpan":{"end":[6,24],"start":[1,1]}} \ No newline at end of file +{"builtWith":"0.0.1","comments":[],"dataTypes":{},"decls":[{"annotation":{"meta":null,"sourceSpan":{"end":[5,15],"start":[5,3]}},"bindType":"NonRec","expression":{"abstraction":{"abstraction":{"annotation":{"meta":{"metaType":"IsForeign"},"sourceSpan":{"end":[6,18],"start":[6,12]}},"kind":"Var","type":{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,11]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":0,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,40],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,39]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":[{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":[{"annotation":[{"end":[8,48],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,46]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,45],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,44]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[8,50],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,49]},[]],"contents":{"kind":{"annotation":[{"end":[8,28],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[8,24]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"value":{"identifier":"middle","moduleName":["Middle"]}},"annotation":{"meta":null,"sourceSpan":{"end":[6,23],"start":[6,12]}},"argument":{"annotation":{"meta":null,"sourceSpan":{"end":[0,0],"start":[0,0]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},"value":{"identifier":"testClsUnit","moduleName":["Test"]}},"kind":"App"},"annotation":{"meta":null,"sourceSpan":{"end":[6,23],"start":[6,12]}},"argument":{"annotation":{"meta":{"metaType":"IsForeign"},"sourceSpan":{"end":[6,23],"start":[6,19]}},"kind":"Var","type":{"annotation":[{"end":[5,13],"name":"tests/purus/passing/TransitiveImport/Middle.purs","start":[5,9]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"value":{"identifier":"unit","moduleName":["Middle"]}},"kind":"App"},"identifier":"main"}],"exports":["main"],"foreign":[],"imports":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Builtin"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Middle"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Prim"]},{"annotation":{"meta":null,"sourceSpan":{"end":[6,24],"start":[1,1]}},"moduleName":["Test"]}],"moduleName":["Main"],"modulePath":"tests/purus/passing/TransitiveImport/TransitiveImport.purs","reExports":{},"sourceSpan":{"end":[6,24],"start":[1,1]}} \ No newline at end of file diff --git a/tests/purus/passing/TransitiveImport/output/Main/index.cfn.pretty b/tests/purus/passing/TransitiveImport/output/Main/index.cfn.pretty index 614bf028..98c079c4 100644 --- a/tests/purus/passing/TransitiveImport/output/Main/index.cfn.pretty +++ b/tests/purus/passing/TransitiveImport/output/Main/index.cfn.pretty @@ -15,5 +15,5 @@ main :: Test.Unit main = (middle: forall (a :: Prim.Type). Test.TestCls$Dict (a :: Prim.Type) -> (a :: Prim.Type) -> (a :: Prim.Type)) - (unitTestCls: Test.TestCls$Dict Test.Unit) + (testClsUnit: Test.TestCls$Dict Test.Unit) (unit: Test.Unit) \ No newline at end of file diff --git a/tests/purus/passing/TransitiveImport/output/Test/externs.cbor b/tests/purus/passing/TransitiveImport/output/Test/externs.cbor index 323deda7..8026bde4 100644 Binary files a/tests/purus/passing/TransitiveImport/output/Test/externs.cbor and b/tests/purus/passing/TransitiveImport/output/Test/externs.cbor differ diff --git a/tests/purus/passing/TransitiveImport/output/Test/index.cfn b/tests/purus/passing/TransitiveImport/output/Test/index.cfn index f5e7fa95..8e704cee 100644 --- a/tests/purus/passing/TransitiveImport/output/Test/index.cfn +++ b/tests/purus/passing/TransitiveImport/output/Test/index.cfn @@ -1 +1 @@ -{"builtWith":"0.0.1","comments":[],"dataTypes":{"TestCls$Dict":["newtype",[["a",{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}]],[{"dataCtorAnn":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,1]},[]],"dataCtorFields":[[{"Ident":"dict"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}]],"dataCtorName":"TestCls$Dict"}]],"Unit":["data",[],[{"dataCtorAnn":[{"end":[3,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[3,11]},[]],"dataCtorFields":[],"dataCtorName":"Unit"}]]},"decls":[{"annotation":{"meta":null,"sourceSpan":{"end":[3,17],"start":[3,1]}},"bindType":"NonRec","expression":{"annotation":{"meta":null,"sourceSpan":{"end":[3,17],"start":[3,1]}},"constructorName":"Unit","fieldNames":[],"kind":"Constructor","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"typeName":"Unit"},"identifier":"Unit"},{"annotation":{"meta":{"metaType":"IsTypeClassConstructor"},"sourceSpan":{"end":[6,17],"start":[5,1]}},"bindType":"NonRec","expression":{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[6,17],"start":[5,1]}},"argument":"x","body":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[5,1]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"identifier":"x","sourcePos":[0,0]}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":null,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"}},"identifier":"TestCls$Dict"},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"bindType":"NonRec","expression":{"abstraction":{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[9,16],"start":[8,1]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"}],"tag":"TypeApp"},"value":{"identifier":"TestCls$Dict","moduleName":["Test"]}},"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"argument":{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"kind":"Literal","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"literalType":"ObjectLiteral","value":[["test",{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[9,3]}},"argument":"v","body":{"annotation":{"meta":{"constructorType":"ProductType","identifiers":[],"metaType":"IsConstructor"},"sourceSpan":{"end":[9,16],"start":[9,12]}},"kind":"Var","type":{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"value":{"identifier":"Unit","moduleName":["Test"]}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,37],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,33]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"}}]]}},"kind":"App"},"identifier":"unitTestCls"},{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"bindType":"NonRec","expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"argument":"dict","body":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"caseAlternatives":[{"binders":[{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[6,17],"start":[6,3]}},"binderType":"ConstructorBinder","binders":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"binderType":"VarBinder","identifier":"v"}],"constructorName":{"identifier":"TestCls$Dict","moduleName":["Test"]},"typeName":{"identifier":"TestCls$Dict","moduleName":["Test"]}}],"expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"identifier":"v","sourcePos":[6,3]}},"fieldName":"test","kind":"Accessor","type":{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}},"isGuarded":false}],"caseExpressions":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},"value":{"identifier":"dict","sourcePos":[0,0]}}],"kind":"Case","type":{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":1,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarVisible"},"tag":"ForAll"}},"identifier":"test"}],"exports":["test","Unit","unitTestCls"],"foreign":[],"imports":[{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Builtin"]},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Prim"]},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Test"]}],"moduleName":["Test"],"modulePath":"tests/purus/passing/TransitiveImport/Test.purs","reExports":{},"sourceSpan":{"end":[9,16],"start":[1,1]}} \ No newline at end of file +{"builtWith":"0.0.1","comments":[],"dataTypes":{"TestCls$Dict":["newtype",[["a",{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}]],[{"dataCtorAnn":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,1]},[]],"dataCtorFields":[[{"Ident":"dict"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}]],"dataCtorName":"TestCls$Dict"}]],"Unit":["data",[],[{"dataCtorAnn":[{"end":[3,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[3,11]},[]],"dataCtorFields":[],"dataCtorName":"Unit"}]]},"decls":[{"annotation":{"meta":null,"sourceSpan":{"end":[3,17],"start":[3,1]}},"bindType":"NonRec","expression":{"annotation":{"meta":null,"sourceSpan":{"end":[3,17],"start":[3,1]}},"constructorName":"Unit","fieldNames":[],"kind":"Constructor","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"typeName":"Unit"},"identifier":"Unit"},{"annotation":{"meta":{"metaType":"IsTypeClassConstructor"},"sourceSpan":{"end":[6,17],"start":[5,1]}},"bindType":"NonRec","expression":{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[6,17],"start":[5,1]}},"argument":"x","body":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[5,1]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"identifier":"x","sourcePos":[0,0]}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":null,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"}},"identifier":"TestCls$Dict"},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"bindType":"NonRec","expression":{"abstraction":{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[9,16],"start":[8,1]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"}],"tag":"TypeApp"},"value":{"identifier":"TestCls$Dict","moduleName":["Test"]}},"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"argument":{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[8,1]}},"kind":"Literal","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"literalType":"ObjectLiteral","value":[["test",{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[9,3]}},"argument":"v","body":{"annotation":{"meta":{"constructorType":"ProductType","identifiers":[],"metaType":"IsConstructor"},"sourceSpan":{"end":[9,16],"start":[9,12]}},"kind":"Var","type":{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"},"value":{"identifier":"Unit","moduleName":["Test"]}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"},{"annotation":[{"end":[8,22],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[8,18]},[]],"contents":[["Test"],"Unit"],"tag":"TypeConstructor"}],"tag":"TypeApp"}}]]}},"kind":"App"},"identifier":"testClsUnit"},{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"bindType":"NonRec","expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"argument":"dict","body":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"caseAlternatives":[{"binders":[{"annotation":{"meta":{"metaType":"IsNewtype"},"sourceSpan":{"end":[6,17],"start":[6,3]}},"binderType":"ConstructorBinder","binders":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"binderType":"VarBinder","identifier":"v"}],"constructorName":{"identifier":"TestCls$Dict","moduleName":["Test"]},"typeName":{"identifier":"TestCls$Dict","moduleName":["Test"]}}],"expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"expression":{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Record"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":["test",{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"tag":"REmpty"},{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"KindApp"}],"tag":"RCons"}],"tag":"TypeApp"},"value":{"identifier":"v","sourcePos":[6,3]}},"fieldName":"test","kind":"Accessor","type":{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}},"isGuarded":false}],"caseExpressions":[{"annotation":{"meta":null,"sourceSpan":{"end":[6,17],"start":[6,3]}},"kind":"Var","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},"value":{"identifier":"dict","sourcePos":[0,0]}}],"kind":"Case","type":{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}},"kind":"Abs","type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"identifier":"a","kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"skolem":1,"type":{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":[["Test"],"TestCls$Dict"],"tag":"TypeConstructor"},{"annotation":[{"end":[0,0],"name":"","start":[0,0]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":[{"annotation":[{"end":[6,15],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,13]},[]],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[{"end":[6,12],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,11]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[{"end":[6,17],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[6,16]},[]],"contents":{"kind":{"annotation":[{"end":[5,25],"name":"tests/purus/passing/TransitiveImport/Test.purs","start":[5,21]},[]],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"},"var":"a"},"tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarVisible"},"tag":"ForAll"}},"identifier":"test"}],"exports":["test","Unit","testClsUnit"],"foreign":[],"imports":[{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Builtin"]},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Prim"]},{"annotation":{"meta":null,"sourceSpan":{"end":[9,16],"start":[1,1]}},"moduleName":["Test"]}],"moduleName":["Test"],"modulePath":"tests/purus/passing/TransitiveImport/Test.purs","reExports":{},"sourceSpan":{"end":[9,16],"start":[1,1]}} \ No newline at end of file diff --git a/tests/purus/passing/TransitiveImport/output/Test/index.cfn.pretty b/tests/purus/passing/TransitiveImport/output/Test/index.cfn.pretty index 29218e6a..112c59d5 100644 --- a/tests/purus/passing/TransitiveImport/output/Test/index.cfn.pretty +++ b/tests/purus/passing/TransitiveImport/output/Test/index.cfn.pretty @@ -6,7 +6,7 @@ Imported Modules: Exports: test, Unit, - unitTestCls + testClsUnit Re-Exports: Foreign: @@ -20,8 +20,8 @@ TestCls$Dict = \(x: { test :: (a :: Prim.Type) -> (a :: Prim.Type) }) -> (x: { test :: (a :: Prim.Type) -> (a :: Prim.Type) }) -unitTestCls :: Test.TestCls$Dict Test.Unit -unitTestCls = +testClsUnit :: Test.TestCls$Dict Test.Unit +testClsUnit = (TestCls$Dict: { test :: Test.Unit -> Test.Unit } -> Test.TestCls$Dict Test.Unit) ({ test: \(v: Test.Unit) -> (Unit: Test.Unit) }: {