purescript-0.15.0: tests/purs/publish/basic-example/output/Data.Reflectable/docs.json
{"reExports":[],"name":"Data.Reflectable","comments":null,"declarations":[{"kind":{"kind":{"annotation":[],"tag":"ForAll","contents":["k",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"k"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Type"]}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Constraint"]}]}]},null]},"keyword":"class"},"children":[{"comments":"Reflect a type `v` to its term-level representation.\n","title":"reflectType","info":{"declType":"typeClassMember","type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Type","Proxy"],"Proxy"]},{"annotation":[],"tag":"TypeVar","contents":"v"}]}]},{"annotation":[],"tag":"TypeVar","contents":"t"}]}},"sourceSpan":{"start":[21,3],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[21,30]}}],"comments":"A type-class for reflectable types.\n\nInstances for the following kinds are solved by the compiler:\n* Boolean\n* Int\n* Ordering\n* Symbol\n","title":"Reflectable","info":{"fundeps":[[["v"],["t"]]],"arguments":[["v",null],["t",null]],"declType":"typeClass","superclasses":[]},"sourceSpan":{"start":[19,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[21,30]}},{"kind":null,"children":[{"comments":null,"title":"<anonymous>","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Reflectable"],"Reifiable"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Boolean"]}]}},"sourceSpan":{"start":[30,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[30,27]}},{"comments":null,"title":"<anonymous>","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Reflectable"],"Reifiable"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Int"]}]}},"sourceSpan":{"start":[31,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[31,23]}},{"comments":null,"title":"<anonymous>","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Reflectable"],"Reifiable"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Ordering"],"Ordering"]}]}},"sourceSpan":{"start":[32,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[32,28]}},{"comments":null,"title":"<anonymous>","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Reflectable"],"Reifiable"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"String"]}]}},"sourceSpan":{"start":[33,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[33,26]}}],"comments":"A type class for reifiable types.\n\nInstances of this type class correspond to the `t` synthesized\nby the compiler when solving the `Reflectable` type class.\n","title":"Reifiable","info":{"fundeps":[],"arguments":[["t",null]],"declType":"typeClass","superclasses":[]},"sourceSpan":{"start":[28,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[28,18]}},{"kind":null,"children":[],"comments":"Reify a value of type `t` such that it can be consumed by a\nfunction constrained by the `Reflectable` type class. For\nexample:\n\n```purs\ntwiceFromType :: forall v. Reflectable v Int => Proxy v -> Int\ntwiceFromType = (_ * 2) <<< reflectType\n\ntwiceOfTerm :: Int\ntwiceOfTerm = reifyType 21 twiceFromType\n```\n","title":"reifyType","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["t",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ConstrainedType","contents":[{"constraintAnn":[],"constraintClass":[["Data","Reflectable"],"Reifiable"],"constraintArgs":[{"annotation":[],"tag":"TypeVar","contents":"t"}],"constraintKindArgs":[],"constraintData":null},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"t"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"ForAll","contents":["v",{"annotation":[],"tag":"ConstrainedType","contents":[{"constraintAnn":[],"constraintClass":[["Data","Reflectable"],"Reflectable"],"constraintArgs":[{"annotation":[],"tag":"TypeVar","contents":"v"},{"annotation":[],"tag":"TypeVar","contents":"t"}],"constraintKindArgs":[],"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","Proxy"],"Proxy"]},{"annotation":[],"tag":"TypeVar","contents":"v"}]}]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]},null]}}]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}]},null]},null]}},"sourceSpan":{"start":[49,1],"name":"../../../support/bower_components/purescript-prelude/src/Data/Reflectable.purs","end":[49,94]}}]}