import * as tracing_1 from "../../../Tracing"
const fileName_1 = "(@effect-ts/system): _src/Experimental/Stream/_internal/Pull.ts"
import * as A from "../../../Collections/Immutable/Chunk"
import * as T from "../../../Effect"
import * as O from "../../../Option"
import * as Q from "../../../Queue"
import * as Take from "./Take"
export function emit(a) {
  return T.succeed(A.single(a), fileName_1 + ":12:19")
}
export function emitChunk(as) {
  return T.succeed(as, fileName_1 + ":16:19")
}
export function fromQueue(d) {
  return T.chain_(Q.take(d), (_) => Take.done(_), fileName_1 + ":22:18")
}
export function fail(e) {
  return T.fail(O.some(e), fileName_1 + ":26:16")
}
export function halt(c) {
  return T.mapError_(T.halt(c, fileName_1 + ":30:28"), O.some, fileName_1 + ":30:21")
}
export function empty() {
  return T.succeed(A.empty(), fileName_1 + ":34:19")
}
export const end = /*#__PURE__*/ T.fail(O.none, fileName_1 + ":37:56")
//# sourceMappingURL=Pull.js.map
