packages feed

purescript-0.13.0: tests/purs/publish/basic-example/output/Control.Monad.ST.Internal/docs.json

{"reExports":[],"name":"Control.Monad.ST.Internal","comments":null,"declarations":[{"children":[],"comments":"`ST` is concerned with _restricted_ mutation. Mutation is restricted to a\n_region_ of mutable references. This kind is inhabited by phantom types\nwhich represent regions in the type system.\n","title":"Region","info":{"declType":"kind"},"sourceSpan":{"start":[11,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[11,27]}},{"children":[{"comments":null,"title":"functorST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Functor"],"Functor"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[28,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[29,13]}},{"comments":null,"title":"applyST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Apply"],"Apply"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[31,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[32,13]}},{"comments":null,"title":"applicativeST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Applicative"],"Applicative"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[34,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[35,15]}},{"comments":null,"title":"bindST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Bind"],"Bind"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[37,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[38,15]}},{"comments":null,"title":"monadST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad"],"Monad"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[40,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[40,33]}},{"comments":null,"title":"monadRecST","info":{"declType":"instance","dependencies":[],"type":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","Rec","Class"],"MonadRec"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]}]}},"sourceSpan":{"start":[42,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[58,19]}}],"comments":"The `ST` type constructor allows _local mutation_, i.e. mutation which\ndoes not \"escape\" into the surrounding computation.\n\nAn `ST` computation is parameterized by a phantom type which is used to\nrestrict the set of reference cells it is allowed to access.\n\nThe `run` function can be used to run a computation in the `ST` monad.\n","title":"ST","info":{"kind":{"annotation":[],"tag":"FunKind","contents":[{"annotation":[],"tag":"NamedKind","contents":[["Control","Monad","ST","Internal"],"Region"]},{"annotation":[],"tag":"FunKind","contents":[{"annotation":[],"tag":"NamedKind","contents":[["Prim"],"Type"]},{"annotation":[],"tag":"NamedKind","contents":[["Prim"],"Type"]}]}]},"declType":"externData"},"sourceSpan":{"start":[20,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[20,49]}},{"children":[],"comments":null,"title":"map_","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["b",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeVar","contents":"b"}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"b"}]}]}]},null]},null]},null]}},"sourceSpan":{"start":[22,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[22,66]}},{"children":[],"comments":null,"title":"pure_","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},null]},null]}},"sourceSpan":{"start":[24,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[24,48]}},{"children":[],"comments":null,"title":"bind_","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["b",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"b"}]}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"b"}]}]}]},null]},null]},null]}},"sourceSpan":{"start":[26,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[26,72]}},{"children":[],"comments":"Run an `ST` computation.\n\nNote: the type of `run` uses a rank-2 type to constrain the phantom\ntype `h`, such that the computation must not leak any mutable references\nto the surrounding computation. It may cause problems to apply this\nfunction using the `$` operator. The recommended approach is to use\nparentheses instead.\n","title":"run","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},null]}}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},null]}},"sourceSpan":{"start":[67,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[67,56]}},{"children":[],"comments":"Loop while a condition is `true`.\n\n`while b m` is ST computation which runs the ST computation `b`. If its\nresult is `true`, it runs the ST computation `m` and loops. If not, the\ncomputation ends.\n","title":"while","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Boolean"]}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Unit"],"Unit"]}]}]}]},null]},null]}},"sourceSpan":{"start":[74,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[74,72]}},{"children":[],"comments":"Loop over a consecutive collection of numbers\n\n`ST.for lo hi f` runs the computation returned by the function `f` for each\nof the inputs between `lo` (inclusive) and `hi` (exclusive).\n","title":"for","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Int"]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Int"]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Int"]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Unit"],"Unit"]}]}]}]}]},null]},null]}},"sourceSpan":{"start":[80,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[80,77]}},{"children":[],"comments":"Loop over an array of values.\n\n`ST.foreach xs f` runs the computation returned by the function `f` for each\nof the inputs `xs`.\n","title":"foreach","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Array"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Unit"],"Unit"]}]}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeConstructor","contents":[["Data","Unit"],"Unit"]}]}]}]},null]},null]}},"sourceSpan":{"start":[86,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[86,79]}},{"children":[],"comments":"The type `STRef r a` represents a mutable reference holding a value of\ntype `a`, which can be used with the `ST r` effect.\n","title":"STRef","info":{"kind":{"annotation":[],"tag":"FunKind","contents":[{"annotation":[],"tag":"NamedKind","contents":[["Control","Monad","ST","Internal"],"Region"]},{"annotation":[],"tag":"FunKind","contents":[{"annotation":[],"tag":"NamedKind","contents":[["Prim"],"Type"]},{"annotation":[],"tag":"NamedKind","contents":[["Prim"],"Type"]}]}]},"declType":"externData"},"sourceSpan":{"start":[90,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[90,52]}},{"children":[],"comments":"Create a new mutable reference.\n","title":"new","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"STRef"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}}]}]},null]},null]}},"sourceSpan":{"start":[93,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[93,56]}},{"children":[],"comments":"Read the current value of a mutable reference.\n","title":"read","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"STRef"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},null]},null]}},"sourceSpan":{"start":[96,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[96,55]}},{"children":[],"comments":"Update the value of a mutable reference by applying a function\nto the current value, computing a new state value for the reference and\na return value.\n","title":"modify'","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["b",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Record"]},{"annotation":[],"tag":"RCons","contents":["state",{"annotation":[],"tag":"TypeVar","contents":"a"},{"annotation":[],"tag":"RCons","contents":["value",{"annotation":[],"tag":"TypeVar","contents":"b"},{"annotation":[],"tag":"REmpty"}]}]}]}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"STRef"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"b"}]}]}]},null]},null]},null]}},"sourceSpan":{"start":[101,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[101,97]}},{"children":[],"comments":"Modify the value of a mutable reference by applying a function to the\ncurrent value. The modified value is returned.\n","title":"modify","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"ParensInType","contents":{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"STRef"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]}]},null]},null]}},"sourceSpan":{"start":[105,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[105,54]}},{"children":[],"comments":"Set the value of a mutable reference.\n","title":"write","info":{"declType":"value","type":{"annotation":[],"tag":"ForAll","contents":["r",{"annotation":[],"tag":"ForAll","contents":["a",{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeVar","contents":"a"}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"STRef"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]},{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeApp","contents":[{"annotation":[],"tag":"TypeConstructor","contents":[["Control","Monad","ST","Internal"],"ST"]},{"annotation":[],"tag":"TypeVar","contents":"r"}]},{"annotation":[],"tag":"TypeVar","contents":"a"}]}]}]},null]},null]}},"sourceSpan":{"start":[109,1],"name":"../../../support/bower_components/purescript-st/src/Control/Monad/ST/Internal.purs","end":[109,61]}}]}