[][src]Enum dqcsim::common::protocol::GatestreamDown

pub enum GatestreamDown {
    Pipelined(SequenceNumberPipelinedGatestreamDown),
    ArbRequest(ArbCmd),
}

Gatestream requests/downstream messages.

Variants

Pipelined(SequenceNumberPipelinedGatestreamDown)

A pipelined gatestream request.

By pipelined we mean that the response to the request is NOT immediately waited upon. In fact, not every request necessarily even needs a response.

To associate requests with responses a sequence number system is used. The sequence numbers are generated by a counter on the upstream side such that they are monotonously increasing. The sequence number is echoed in the response, such that when the contents of a response are needed, it can be waited upon. Other than that, the downstream plugin should not do anything with the sequence number.

ArbRequest(ArbCmd)

Requests execution of the given ArbCmd by the plugin.

The valid responses to this message are:

  • success: GatestreamUp::ArbSuccess
  • failure: GatestreamUp::ArbFailure

Trait Implementations

impl PartialEq<GatestreamDown> for GatestreamDown[src]

impl Debug for GatestreamDown[src]

impl Serialize for GatestreamDown[src]

impl<'de> Deserialize<'de> for GatestreamDown[src]

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,