Push Module
Types
Functions and values
| Function or value | Description |
Full Usage:
UserStateKey
Returns: string
|
|
|
|
|
|
Full Usage:
nextPromisedStreamId counter
Parameters:
int32 ref
Returns: int32 option
|
Allocate the next promised stream id from a server-side counter. RFC 7540 §5.1.1: streams initiated by the server use even-numbered identifiers and the value 0x0 is reserved. Mutates the counter; the next call returns the next even id. Returns `None` if the counter would overflow the legal 31-bit space, in which case the caller MUST send a GOAWAY and stop creating streams.
|
Full Usage:
push path headers ctx
Parameters:
string
headers : (string * string) list
ctx : HttpContext
Returns: Async<HttpContext option>
|
Public WebPart: record a push intent for `path` with the given request header fragment. No-op under HTTP/1.x — the recorded list is consumed only by the HTTP/2 writer. Multiple calls append; identical paths are not deduplicated (a server may legitimately push the same path twice with different headers, and dedup is the writer's policy).
|
Full Usage:
withinMaxConcurrentStreams currentActive maxConcurrent
Parameters:
int
maxConcurrent : int32 option
Returns: bool
|
Check whether starting another stream would respect the peer's SETTINGS_MAX_CONCURRENT_STREAMS. `currentActive` is the number of streams the server currently has Open or HalfClosed (per RFC 7540 §5.1.2 the limit counts those states). When the peer has not advertised a limit (`None`), pushing is permitted.
|