"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.unsafeSet = void 0;
exports.unsafeSet_ = unsafeSet_;

var _getOrMakeEntry = /*#__PURE__*/require("@effect/core/stm/TRef/operations/_internal/getOrMakeEntry");

/**
 * Unsafely sets the value of the `TRef`.
 *
 * @tsplus fluent ets/TRef unsafeSet
 */
function unsafeSet_(self, value, journal) {
  const entry = (0, _getOrMakeEntry.getOrMakeEntry)(self, journal);
  entry.use(_ => _.unsafeSet(value));
  return undefined;
}
/**
 * Unsafely sets the value of the `TRef`.
 *
 * @tsplus static ets/TRef/Aspects unsafeSet
 */


const unsafeSet = (value, journal) => self => unsafeSet_(self, value, journal);

exports.unsafeSet = unsafeSet;
//# sourceMappingURL=unsafeSet.js.map