"use strict";

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

var _primitives = /*#__PURE__*/require("@effect/core/io/Effect/definition/primitives");

/**
 * Returns an `Effect` that runs with `value` bound to the current fiber.
 *
 * Guarantees that fiber data is properly restored via `acquireRelease`.
 *
 * @tsplus fluent ets/FiberRef locally
 */
function locally_(self, value, __tsplusTrace) {
  return use => new _primitives.IFiberRefLocally(value, self, use, __tsplusTrace);
}
/**
 * Returns an `Effect` that runs with `value` bound to the current fiber.
 *
 * Guarantees that fiber data is properly restored via `acquireRelease`.
 *
 * @tsplus static ets/FiberRef/Aspects locally
 */


const locally = (value, __tsplusTrace) => self => locally_(self, value, __tsplusTrace);

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