Struct solicit::http::frame::headers::StreamDependency [] [src]

pub struct StreamDependency {
    pub stream_id: StreamId,
    pub weight: u8,
    pub is_exclusive: bool,
}

The struct represents the dependency information that can be attached to a stream and sent within a HEADERS frame (one with the Priority flag set).

Fields

The ID of the stream that a particular stream depends on

The weight for the stream. The value exposed (and set) here is always in the range [0, 255], instead of [1, 256] (as defined in section 5.3.2.) so that the value fits into a u8.

A flag indicating whether the stream dependency is exclusive.

Methods

impl StreamDependency
[src]

Creates a new StreamDependency with the given stream ID, weight, and exclusivity.

Parses the first 5 bytes in the buffer as a StreamDependency. (Each 5-byte sequence is always decodable into a stream dependency structure).

Panics

If the given buffer has less than 5 elements, the method will panic.

Serializes the StreamDependency into a 5-byte buffer representing the dependency description, as described in section 6.2. of the HTTP/2 spec:

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-------------+-----------------------------------------------+
|E|                 Stream Dependency  (31)                     |
+-+-------------+-----------------------------------------------+
|  Weight  (8)  |
+-+-------------+-----------------------------------------------+

Where "E" is set if the dependency is exclusive.

Trait Implementations

impl PartialEq for StreamDependency
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Debug for StreamDependency
[src]

Formats the value using the given formatter.

impl Clone for StreamDependency
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more