# RefHashSet.difference

Compute the difference with another HashSet.

## Signatures

```ts
export declare const difference: {
    <V>(that: HashSet.HashSet<V>): <E, R>(ref: RefHashSet<V, E, R>) => Effect.Effect<HashSet.HashSet<V>, E, R>;
    <V, E, R>(ref: RefHashSet<V, E, R>, that: HashSet.HashSet<V>): Effect.Effect<HashSet.HashSet<V>, E, R>;
};
```

## Why

Compute the difference with another HashSet. The operation remains attached to the RefSubject's
versioned state boundary.

## Ownership and lifetime

Running difference performs one serialized hash set transition and resolves with its committed
value. It acquires no resource; failures and services remain those of the source ref.
