purescript-0.7.2.0: tests/support/flattened/Control-Monad-ST.js
/* global exports */
"use strict";
// module Control.Monad.ST
exports.newSTRef = function (val) {
return function () {
return { value: val };
};
};
exports.readSTRef = function (ref) {
return function () {
return ref.value;
};
};
exports.modifySTRef = function (ref) {
return function (f) {
return function () {
/* jshint boss: true */
return ref.value = f(ref.value);
};
};
};
exports.writeSTRef = function (ref) {
return function (a) {
return function () {
/* jshint boss: true */
return ref.value = a;
};
};
};
exports.runST = function (f) {
return f;
};