Skip to main content

Module store

Module store 

Source
Expand description

Where an answer is written down so it outlives the process.

A resolver is code, and code only changes with a deploy. The store is the other half: somewhere an operator can put an answer now — this customer gets the new checkout today, that flag goes off while we work out what broke — and have it survive a restart and be seen by every process behind the load balancer.

An entry is an override, not a cache. That distinction runs through the whole crate: a stored value is a decision somebody made, so it beats the resolver rather than standing in for it, and nothing expires it. See Flags for the precedence chain it sits in.

Only the in-memory implementation ships here. A database-backed store is a dozen lines against this trait, and it is not written for you because the table belongs to the application: its name, its columns, and above all which migration owns it are decisions this crate should not be making.

Structs§

MemoryStore
Overrides in a map, for a single process.

Traits§

FlagStore
Somewhere overrides are kept.

Type Aliases§

BoxFuture
A boxed future borrowed from the store and its arguments.