op_alloy_protocol

Struct Channel

Source
pub struct Channel { /* private fields */ }
Expand description

A Channel is a set of batches that are split into at least one, but possibly multiple frames.

Frames are allowed to be ingested out of order. Each frame is ingested one by one. Once a frame with closed is added to the channel, the channel may mark itself as ready for reading once all intervening frames have been added

Implementations§

Source§

impl Channel

Source

pub fn new(id: ChannelId, open_block: BlockInfo) -> Self

Create a new Channel with the given ChannelId and BlockInfo.

Source

pub const fn id(&self) -> ChannelId

Returns the current ChannelId for the channel.

Source

pub fn len(&self) -> usize

Returns the number of frames ingested.

Source

pub fn is_empty(&self) -> bool

Returns if the channel is empty.

Source

pub fn add_frame( &mut self, frame: Frame, l1_inclusion_block: BlockInfo, ) -> Result<(), ChannelError>

Add a frame to the channel.

§Takes
  • frame: The frame to add to the channel
  • l1_inclusion_block: The block that the frame was included in
§Returns
  • Ok(()): If the frame was successfully buffered
  • Err(_): If the frame was invalid
Source

pub const fn open_block_number(&self) -> u64

Returns the block number of the L1 block that contained the first Frame in this channel.

Source

pub const fn size(&self) -> usize

Returns the estimated size of the channel including Frame overhead.

Source

pub fn is_ready(&self) -> bool

Returns true if the channel is ready to be read.

Source

pub fn frame_data(&self) -> Option<Bytes>

Returns all of the channel’s Frames concatenated together.

§Returns
  • Some(Bytes): The concatenated frame data
  • None: If the channel is missing frames

Trait Implementations§

Source§

impl Clone for Channel

Source§

fn clone(&self) -> Channel

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Channel

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Channel

Source§

fn default() -> Channel

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more