@jewel998/state-machine - v0.0.5 / ImmerImmutabilityProvider
Class: ImmerImmutabilityProvider<TContext>
Type parameters
| Name | Type |
|---|---|
TContext | extends ContextConstraint |
Implements
ImmutabilityProvider<TContext>
Table of contents
Constructors
Properties
Methods
Constructors
constructor
• new ImmerImmutabilityProvider<TContext>(options?): ImmerImmutabilityProvider<TContext>
Type parameters
| Name | Type |
|---|---|
TContext | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
options | Object |
options.enablePatches? | boolean |
options.immerInstance? | ImmerAPI |
Returns
ImmerImmutabilityProvider<TContext>
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:39
Properties
name
• Readonly name: "immer"
Implementation of
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:35
Methods
clone
▸ clone(context): TContext
Parameters
| Name | Type |
|---|---|
context | TContext |
Returns
TContext
Implementation of
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:54
freeze
▸ freeze(context): TContext
Parameters
| Name | Type |
|---|---|
context | TContext |
Returns
TContext
Implementation of
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:75
isImmutable
▸ isImmutable(context): boolean
Parameters
| Name | Type |
|---|---|
context | TContext |
Returns
boolean
Implementation of
ImmutabilityProvider.isImmutable
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:92
produce
▸ produce<T>(base, recipe): T
Type parameters
| Name | Type |
|---|---|
T | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
base | T |
recipe | (draft: T) => void | T |
Returns
T
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:105
produceWithPatches
▸ produceWithPatches<T>(base, recipe): [T, Patch[], Patch[]]
Type parameters
| Name | Type |
|---|---|
T | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
base | T |
recipe | (draft: T) => void | T |
Returns
[T, Patch[], Patch[]]
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:118
applyPatches
▸ applyPatches<T>(base, patches): T
Type parameters
| Name | Type |
|---|---|
T | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
base | T |
patches | Patch[] |
Returns
T
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:137
current
▸ current<T>(draft): T
Type parameters
| Name | Type |
|---|---|
T | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
draft | T |
Returns
T
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:147
original
▸ original<T>(draft): undefined | T
Type parameters
| Name | Type |
|---|---|
T | extends ContextConstraint |
Parameters
| Name | Type |
|---|---|
draft | T |
Returns
undefined | T
Defined in
src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:157