pub struct ChunkRequestHandle {
inner: Option<ChunkRequestInner>,
}Expand description
Handle for a ticketed chunk request.
Dropping or cancelling the handle releases its tickets. The handle never creates chunk holders directly; lifecycle publication remains owned by the game-tick boundary.
Fields§
§inner: Option<ChunkRequestInner>Implementations§
Source§impl ChunkRequestHandle
impl ChunkRequestHandle
pub(crate) fn new(chunk_map: Arc<ChunkMap>, request: ChunkRequest) -> Self
fn new_with_ticket( chunk_map: Arc<ChunkMap>, request: ChunkRequest, ticket: ChunkTicket, ) -> Self
Sourcepub fn status(&self) -> Option<ChunkStatus>
pub fn status(&self) -> Option<ChunkStatus>
Returns the requested status, if this handle is still active.
Sourcepub fn ticket_kind(&self) -> Option<ChunkTicketKind>
pub fn ticket_kind(&self) -> Option<ChunkTicketKind>
Returns the ticket kind, if this handle is still active.
Sourcepub fn poll(&self) -> ChunkRequestState
pub fn poll(&self) -> ChunkRequestState
Polls request readiness. Chunk holder creation and generation scheduling are owned by the chunk scheduling epochs.
Sourcepub fn ready_chunks(&self) -> Option<ReadyChunks>
pub fn ready_chunks(&self) -> Option<ReadyChunks>
Returns holders once every requested chunk is at the target status.
fn release_tickets(&mut self)
Trait Implementations§
Source§impl Drop for ChunkRequestHandle
impl Drop for ChunkRequestHandle
Auto Trait Implementations§
impl !RefUnwindSafe for ChunkRequestHandle
impl !UnwindSafe for ChunkRequestHandle
impl Freeze for ChunkRequestHandle
impl Send for ChunkRequestHandle
impl Sync for ChunkRequestHandle
impl Unpin for ChunkRequestHandle
impl UnsafeUnpin for ChunkRequestHandle
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreWraps this value in an
Arc<SyncMutex<>>