admission.bend fails
raw source on the hub · import bend-kit-http@0.28.0.0/admission.bend as Admission
Private bounded transport accounting. Replies contain copied data, never resources.
1 import
import Base
Types
type Counts source · line 4 · raw
Data
Counts@connections:U32 -> @active:U32 -> @buffered:U32 -> @connection_high:U32 -> @active_high:U32 -> @buffered_high:U32 -> @connection_rejected:Nat -> @active_rejected:Nat -> @buffered_rejected:Nat -> Counts
type Caps source · line 9 · raw
Data
Caps@connections:U32 -> @active:U32 -> @buffered:U32 -> Caps
type Command source · line 12 · raw
Data
Acquire@kind:U32 -> @reply:Chan(Bool) -> Command
Release@kind:U32 -> @reply:Chan(Unit) -> Command
Snapshot@reply:Chan(Counts) -> Command
StopCommand
type Step source · line 62 · raw
Type
WaitingStep
Received@command:Maybe<&1, Command> -> Step
Acquired@reply:Chan(Bool) -> @result:Pair(Counts, Bool) -> Step
Definitions
def empty source · line 18 · raw
Counts
def acquire.connection source · line 21 · raw
@full:Bool -> @buffer_full:Bool -> @counts:Counts -> Pair(Counts, Bool)
def acquire.active source · line 32 · raw
@full:Bool -> @counts:Counts -> Pair(Counts, Bool)
def acquire source · line 40 · raw
@kind:U32 -> @caps:Caps -> @+counts:Counts -> Pair(Counts, Bool)
def release source · line 51 · raw
@kind:U32 -> @counts:Counts -> Counts
def stopped source · line 58 · raw
@closing:Bool -> @counts:Counts -> Bool
def open source · line 108 · raw
@caps:Caps -> IO(Chan(Command))
def take source · line 114 · raw
@+inbox:Chan(Command) -> @kind:U32 -> IO(Bool)
def give source · line 120 · raw
@+inbox:Chan(Command) -> @kind:U32 -> IO(Unit)
def snapshot.sent source · line 126 · raw
@sent:Bool -> @+reply:Chan(Counts) -> IO(Maybe<&2, Counts>)
def snapshot source · line 139 · raw
@+inbox:Chan(Command) -> IO(Maybe<&2, Counts>)
A successful rendezvous send was received: Stop cannot erase a queued request. After controller closure a failed send returns None without waiting on its reply.
def close source · line 145 · raw
@inbox:Chan(Command) -> IO(Unit)
Unsafe
unsafe loop source · line 69 · raw
@+inbox:Chan(Command) -> @+caps:Caps -> @+counts:Counts -> @+closing:Bool -> @step:Step -> IO(Unit)
The private inbox is reusable: IO.join would close it after one receive.
unsafe finish source · line 101 · raw
@done:Bool -> @+inbox:Chan(Command) -> @caps:Caps -> @counts:Counts -> @closing:Bool -> IO(Unit)