Package

purescript-refs

Repository
purescript/purescript-refs
License
BSD-3-Clause
Uploaded by
JordanMartinez
Published on
2022-04-27T14:20:14Z

Latest release Build status Pursuit

This module defines functions for working with mutable value references.

Note: Control.Monad.ST provides a safe alternative to Ref when mutation is restricted to a local scope.

Installation

spago install refs 

Example

import Effect.Ref as Ref main = do -- initialize a new Ref with the value 0 ref <- Ref.new 0 -- read from it and check it curr1 <- Ref.read ref assertEqual { actual: curr1, expected: 0 } -- write over the ref with 1 Ref.write 1 ref -- now it is 1 when we read out the value curr2 <- Ref.read ref assertEqual { actual: curr2, expected: 1 } -- modify it by adding 1 to the current state Ref.modify_ (\s -> s + 1) ref -- now it is 2 when we read out the value curr3 <- Ref.read ref assertEqual { actual: curr3, expected: 2 }

See tests to see usages.

Documentation

Module documentation is published on Pursuit.

Modules
Effect.Ref
Dependencies