Skip to content
Effect Days 2026 Get your ticket

MutableRef

18 exports Added in v2.0.0 Source

Boolean

toggle

Added in v2.0.0 Source

Signature

declare function toggle(self: MutableRef<boolean>): MutableRef<boolean>

Constructors

make

Added in v2.0.0 Source

Signature

declare function make<T>(value: T): MutableRef<T>

General

Signature

declare const compareAndSet: {
<T>(oldValue: T, newValue: T): (self: MutableRef<T>) => boolean;
<T>(self: MutableRef<T>, oldValue: T, newValue: T): boolean;
}

get

Added in v2.0.0 Source

Signature

declare function get<T>(self: MutableRef<T>): T

getAndSet

Added in v2.0.0 Source

Signature

declare const getAndSet: {
<T>(value: T): (self: MutableRef<T>) => T;
<T>(self: MutableRef<T>, value: T): T;
}

getAndUpdate

Added in v2.0.0 Source

Signature

declare const getAndUpdate: {
<T>(f: (value: T) => T): (self: MutableRef<T>) => T;
<T>(self: MutableRef<T>, f: (value: T) => T): T;
}

set

Added in v2.0.0 Source

Signature

declare const set: {
<T>(value: T): (self: MutableRef<T>) => MutableRef<T>;
<T>(self: MutableRef<T>, value: T): MutableRef<T>;
}

setAndGet

Added in v2.0.0 Source

Signature

declare const setAndGet: {
<T>(value: T): (self: MutableRef<T>) => T;
<T>(self: MutableRef<T>, value: T): T;
}

update

Added in v2.0.0 Source

Signature

declare const update: {
<T>(f: (value: T) => T): (self: MutableRef<T>) => MutableRef<T>;
<T>(self: MutableRef<T>, f: (value: T) => T): MutableRef<T>;
}

updateAndGet

Added in v2.0.0 Source

Signature

declare const updateAndGet: {
<T>(f: (value: T) => T): (self: MutableRef<T>) => T;
<T>(self: MutableRef<T>, f: (value: T) => T): T;
}

Models

MutableRef interface

Added in v2.0.0 Source

Signature

interface MutableRef<out T> extends Pipeable, Inspectable {
readonly [TypeId]: typeof TypeId;
current: T;
}

Numeric

decrement

Added in v2.0.0 Source

Signature

declare function decrement(self: MutableRef<number>): MutableRef<number>

Signature

declare function decrementAndGet(self: MutableRef<number>): number

Signature

declare function getAndDecrement(self: MutableRef<number>): number

Signature

declare function getAndIncrement(self: MutableRef<number>): number

increment

Added in v2.0.0 Source

Signature

declare function increment(self: MutableRef<number>): MutableRef<number>

Signature

declare function incrementAndGet(self: MutableRef<number>): number

Symbol

TypeId type

Added in v2.0.0 Source

Signature

type TypeId = typeof TypeId