{"comments":null,"declarations":[{"children":[{"comments":null,"info":{"declType":"typeClassMember","type":{"annotation":[],"contents":{"identifier":"b","kind":null,"skolem":null,"type":{"annotation":[],"contents":{"identifier":"c","kind":null,"skolem":null,"type":{"annotation":[],"contents":{"identifier":"d","kind":null,"skolem":null,"type":{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"c","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"d","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"b","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"c","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"b","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"d","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"visibility":"TypeVarInvisible"},"tag":"ForAll"}},"sourceSpan":{"end":[14,51],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[14,3]},"title":"compose"},{"comments":null,"info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"contents":[{"annotation":[],"contents":[["Control","Semigroupoid"],"Semigroupoid"],"tag":"TypeConstructor"},{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"}],"tag":"TypeApp"}},"sourceSpan":{"end":[17,26],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[16,1]},"title":"semigroupoidFn"}],"comments":"A `Semigroupoid` is similar to a [`Category`](#category) but does not\nrequire an identity element `identity`, just composable morphisms.\n\n`Semigroupoid`s must satisfy the following law:\n\n- Associativity: `p <<< (q <<< r) = (p <<< q) <<< r`\n\nOne example of a `Semigroupoid` is the function type constructor `(->)`,\nwith `(<<<)` defined as function composition.\n","info":{"arguments":[["a",null]],"declType":"typeClass","fundeps":[],"superclasses":[]},"kind":{"keyword":"class","kind":{"annotation":[],"contents":{"identifier":"k","kind":null,"skolem":null,"type":{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":"k","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":"k","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":[["Prim"],"Type"],"tag":"TypeConstructor"}],"tag":"TypeApp"}],"tag":"TypeApp"},"tag":"ParensInType"}],"tag":"TypeApp"},{"annotation":[],"contents":[["Prim"],"Constraint"],"tag":"TypeConstructor"}],"tag":"TypeApp"},"visibility":"TypeVarInvisible"},"tag":"ForAll"}},"sourceSpan":{"end":[14,51],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[13,1]},"title":"Semigroupoid"},{"children":[],"comments":null,"info":{"alias":[["Control","Semigroupoid"],{"Right":{"Left":{"Ident":"compose"}}}],"declType":"alias","fixity":{"associativity":"infixr","precedence":9}},"kind":null,"sourceSpan":{"end":[19,24],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[19,1]},"title":"(<<<)"},{"children":[],"comments":"Forwards composition, or `compose` with its arguments reversed.\n","info":{"declType":"value","type":{"annotation":[],"contents":{"identifier":"a","kind":null,"skolem":null,"type":{"annotation":[],"contents":{"identifier":"b","kind":null,"skolem":null,"type":{"annotation":[],"contents":{"identifier":"c","kind":null,"skolem":null,"type":{"annotation":[],"contents":{"identifier":"d","kind":null,"skolem":null,"type":{"annotation":[],"contents":[{"constraintAnn":[],"constraintArgs":[{"annotation":[],"contents":"a","tag":"TypeVar"}],"constraintClass":[["Control","Semigroupoid"],"Semigroupoid"],"constraintData":null,"constraintKindArgs":[]},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"b","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"c","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":[["Prim"],"Function"],"tag":"TypeConstructor"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"c","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"d","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"},{"annotation":[],"contents":[{"annotation":[],"contents":[{"annotation":[],"contents":"a","tag":"TypeVar"},{"annotation":[],"contents":"b","tag":"TypeVar"}],"tag":"TypeApp"},{"annotation":[],"contents":"d","tag":"TypeVar"}],"tag":"TypeApp"}],"tag":"TypeApp"}],"tag":"TypeApp"}],"tag":"ConstrainedType"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"visibility":"TypeVarInvisible"},"tag":"ForAll"},"visibility":"TypeVarInvisible"},"tag":"ForAll"}},"kind":null,"sourceSpan":{"end":[22,76],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[22,1]},"title":"composeFlipped"},{"children":[],"comments":null,"info":{"alias":[["Control","Semigroupoid"],{"Right":{"Left":{"Ident":"composeFlipped"}}}],"declType":"alias","fixity":{"associativity":"infixr","precedence":9}},"kind":null,"sourceSpan":{"end":[25,31],"name":"../../../support/bower_components/purescript-prelude/src/Control/Semigroupoid.purs","start":[25,1]},"title":"(>>>)"}],"name":"Control.Semigroupoid","reExports":[]}