Thanks to visit codestin.com
Credit goes to effect-ts.github.io

Skip to main content Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

TSubscriptionRef.ts overview

Since v3.10.0


Exports Grouped by Category


constructors

make

Signature

declare const make: <A>(value: A) => STM.STM<TSubscriptionRef<A>>

Source

Since v3.10.0

models

TSubscriptionRef (interface)

A TSubscriptionRef<A> is a TRef that can be subscribed to in order to receive a TDequeue<A> of the current value and all committed changes to the value.

Signature

export interface TSubscriptionRef<in out A> extends TSubscriptionRef.Variance<A>, TRef.TRef<A> {
  /** @internal */
  readonly ref: TRef.TRef<A>
  /** @internal */
  readonly pubsub: TPubSub.TPubSub<A>
  /** @internal */
  modify<B>(f: (a: A) => readonly [B, A]): STM.STM<B>

  /**
   * A TDequeue containing the current value of the `Ref` as well as all changes
   * to that value.
   */
  readonly changes: STM.STM<TQueue.TDequeue<A>>
}

Source

Since v3.10.0

mutations

changes

Signature

declare const changes: <A>(self: TSubscriptionRef<A>) => STM.STM<TQueue.TDequeue<A>>

Source

Since v3.10.0

changesScoped

Signature

declare const changesScoped: <A>(self: TSubscriptionRef<A>) => Effect.Effect<TQueue.TDequeue<A>, never, Scope.Scope>

Source

Since v3.10.0

changesStream

Signature

declare const changesStream: <A>(self: TSubscriptionRef<A>) => Stream.Stream<A>

Source

Since v3.10.0

get

Signature

declare const get: <A>(self: TSubscriptionRef<A>) => STM.STM<A>

Source

Since v3.10.0

getAndSet

Signature

declare const getAndSet: {
  <A>(value: A): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, value: A): STM.STM<A>
}

Source

Since v3.10.0

getAndUpdate

Signature

declare const getAndUpdate: {
  <A>(f: (a: A) => A): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => A): STM.STM<A>
}

Source

Since v3.10.0

getAndUpdateSome

Signature

declare const getAndUpdateSome: {
  <A>(f: (a: A) => Option.Option<A>): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => Option.Option<A>): STM.STM<A>
}

Source

Since v3.10.0

modify

Signature

declare const modify: {
  <A, B>(f: (a: A) => readonly [B, A]): (self: TSubscriptionRef<A>) => STM.STM<B>
  <A, B>(self: TSubscriptionRef<A>, f: (a: A) => readonly [B, A]): STM.STM<B>
}

Source

Since v3.10.0

modifySome

Signature

declare const modifySome: {
  <A, B>(fallback: B, f: (a: A) => Option.Option<readonly [B, A]>): (self: TSubscriptionRef<A>) => STM.STM<B>
  <A, B>(self: TSubscriptionRef<A>, fallback: B, f: (a: A) => Option.Option<readonly [B, A]>): STM.STM<B>
}

Source

Since v3.10.0

set

Signature

declare const set: {
  <A>(value: A): (self: TSubscriptionRef<A>) => STM.STM<void>
  <A>(self: TSubscriptionRef<A>, value: A): STM.STM<void>
}

Source

Since v3.10.0

setAndGet

Signature

declare const setAndGet: {
  <A>(value: A): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, value: A): STM.STM<A>
}

Source

Since v3.10.0

update

Signature

declare const update: {
  <A>(f: (a: A) => A): (self: TSubscriptionRef<A>) => STM.STM<void>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => A): STM.STM<void>
}

Source

Since v3.10.0

updateAndGet

Signature

declare const updateAndGet: {
  <A>(f: (a: A) => A): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => A): STM.STM<A>
}

Source

Since v3.10.0

updateSome

Signature

declare const updateSome: {
  <A>(f: (a: A) => Option.Option<A>): (self: TSubscriptionRef<A>) => STM.STM<void>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => Option.Option<A>): STM.STM<void>
}

Source

Since v3.10.0

updateSomeAndGet

Signature

declare const updateSomeAndGet: {
  <A>(f: (a: A) => Option.Option<A>): (self: TSubscriptionRef<A>) => STM.STM<A>
  <A>(self: TSubscriptionRef<A>, f: (a: A) => Option.Option<A>): STM.STM<A>
}

Source

Since v3.10.0

symbols

TSubscriptionRefTypeId

Signature

declare const TSubscriptionRefTypeId: unique symbol

Source

Since v3.10.0

TSubscriptionRefTypeId (type alias)

Signature

type TSubscriptionRefTypeId = typeof TSubscriptionRefTypeId

Source

Since v3.10.0

utils

TSubscriptionRef (namespace)

Source

Since v3.10.0

Variance (interface)

Signature

export interface Variance<in out A> {
  readonly [TSubscriptionRefTypeId]: {
    readonly _A: Types.Invariant<A>
  }
}

Source

Since v3.10.0