# RefIterable.make

Creates a new `RefIterable` from an Iterable, `Effect`, or `Fx`.

## Signatures

```ts
export declare function make<A, E = never, R = never>(initial: Iterable<A> | Effect.Effect<Iterable<A>, E, R> | Fx.Fx<Iterable<A>, E, R>): Effect.Effect<RefIterable<A, E>, never, R | Scope.Scope>;
```

## Why

Creates iterable state with equality suited to that Effect data type, so unchanged values do not
produce redundant pushed updates.

## Ownership and lifetime

The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
and cleanup; source failures and services stay on reads and pushes.
