Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.canton.network/llms.txt

Use this file to discover all available pages before exploring further.

DA.Action.State

DA.Action.State

Module Snapshot

Lifecycle

Stable.

Notices

Status: active Introduced in: 3.4.9 Removed in: - Warnings: 0 Deprecations: 0 Deprecated since: -

Data Types

data State s a

A value of type `State s a` represents a computation that has access to a state variable
of type `s` and produces a value of type `a`.

>>> runState (modify (+1)) 0
((), 1)

>>> evalState (modify (+1)) 0
()

>>> execState (modify (+1)) 0
1

>>> runState (do x <- get; modify (+1); pure x) 0
(0, 1)

>>> runState (put 1) 0
((), 1)

>>> runState (modify (+1)) 0
((), 1)

Note that values of type `State s a` are not serializable.
Constructors:
  • State | Field | Type | Description | | :---- | :--- | :---------- | | runState | s -> (a, s) | |
Instances:
  • instance ActionState s (State s)
  • instance Action (State s)
  • instance Applicative (State s)
  • instance GetField runState (State s a) (s -> (a, s))
  • instance SetField runState (State s a) (s -> (a, s))
  • instance Functor (State s)

Functions

evalState

evalState : State s a -> s -> a
Special case of runState that does not return the final state.

execState

execState : State s a -> s -> s
Special case of runState that does only retun the final state.

Orphan Typeclass Instances

  • instance Functor (State s)
  • instance Applicative (State s)
  • instance Action (State s)
  • instance ActionState s (State s)