"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.orElseSucceed_ = exports.orElseSucceed = void 0;
// ets_tracing: off
const core_1 = require("./core");
const orElse_1 = require("./orElse");
/**
 * Executes this effect and returns its value, if it succeeds, but
 * otherwise succeeds with the specified value.
 *
 * @ets_data_first orElseSucceed_
 */
function orElseSucceed(a, __trace) {
    return (self) => orElseSucceed_(self, a, __trace);
}
exports.orElseSucceed = orElseSucceed;
/**
 * Executes this effect and returns its value, if it succeeds, but
 * otherwise succeeds with the specified value.
 */
function orElseSucceed_(self, a, __trace) {
    return (0, orElse_1.orElse_)(self, () => (0, core_1.succeed)(a), __trace);
}
exports.orElseSucceed_ = orElseSucceed_;
//# sourceMappingURL=orElseSucceed.js.map