# Module gear_common::storage

source · ## Expand description

Gear’s storage API module.

## Structs

`Counter`

implementation based on`ValueStorage`

.- Drain iterator over dequeue’s values.
`Dequeue`

implementation based on`MapStorage`

and`ValueStorage`

s.- Common iterator over dequeue’s values.
- Transpose callback for getting first element of tuple.
- Transpose callback for getting second element of tuple.
- Transpose callback for getting third element of tuple.
- Type for interval values: e.g. in time
`(since, till)`

. - Represents wrapper for any iterator with ability to transpose
`.next()`

result. `Limiter`

implementation based on`ValueStorage`

.- Represents node of the dequeue.
`Mailbox`

implementation based on`DoubleMapStorage`

.- Key generator for
`gear`

’s mailbox implementation. `Mailbox`

implementation based on`Dequeue`

.- Key generator for
`gear`

’s message queue implementation. `Toggler`

implementation based on`ValueStorage`

.`Waitlist`

implementation based on`DoubleMapStorage`

.- Key generator for
`gear`

’s waitlist implementation.

## Traits

- Represents callback action for cases
`(&T) -> R`

, where`R`

is`()`

by default. - Represents default counting logic, by providing ability to return length of the object as specified (associated) type or answer the question is the object empty.
- Represents default counting logic, by providing ability to return length of the object as specified (associated) type or answer the question is the object empty, by provided key of specified (associated) type.
- Represents logic of managing step-by-step changeable value.
- Represents dequeue implementation.
- Represents store of dequeue’s action callbacks.
- Represents dequeue error type.
- Represents logic of managing globally stored double-key map for more complicated logic.
- Represents callback action for cases without input and output.
- Represents callback action for cases
`(&T) -> Result<R, E>`

, where`R`

is`()`

by default and`E`

is associated type`Error`

. - Represents callback action for cases without input for getting some data.
- Represents iterable logic for double key maps (Key1 -> Key2 -> Value).
- Represents iterable logic for single key maps (Key -> Value).
- Represents logic of providing key as specified (associated) type for given as specified (associated) type value by reference.
- Represents iterable over second keys logic for double key maps (Key1 -> Key2 -> Value).
- Represents logic of limiting value decreasing.
- Represents mailbox managing logic.
- Represents store of mailbox’s action callbacks.
- Represents mailbox error type.
- Represents logic of managing globally stored single-key map for more complicated logic.
- Represents messenger’s logic of centralized message processing behavior.
- Represents message queue managing logic.
- Represents logic of providing access for some actions.
- Represents transposing callback for mutating values.
- Represents logic of managing globally stored value for more complicated logic.
- Represents waitlist managing logic.
- Represents store of waitlist’s action callbacks.
- Represents waitlist error type.