Expand description
Help the guard manager (and other crates) deal with “pending information”.
There are two kinds of pending information to deal with. First,
every guard that we hand out needs to be marked as succeeded or
failed. Second, if a guard is given out on an exploratory basis,
then the circuit manager can’t know whether to use a circuit built
through that guard until the guard manager tells it. This is
handled via GuardUsable
.
Structs§
- Guard
Monitor - An object used to tell the
GuardMgr
about the result of trying to build a circuit through a guard. - Guard
Usable - A future used to see if we have “permission” to use a guard.
- Pending
Request 🔒 - Pending information about a guard that we handed out in response to some request, but where we have not yet reported whether the guard is usable.
- Request
Id 🔒 - Internal unique identifier used to tell PendingRequest objects apart.
Enums§
- Guard
Status - A message that we can get back from the circuit manager who asked for a guard.