pub struct TelemetrySession { /* private fields */ }Expand description
A copyable, inert session handle used by callbacks after initialization.
Calling TelemetrySession::with_call is unsafe because the caller must
prove that the current stack is executing as a direct call from SCS on the
game’s main thread.
The scoped capability cannot be returned from the higher-ranked closure:
ⓘ
use scs_sdk::{SdkCall, TelemetrySession};
fn leak(session: TelemetrySession) -> &'static SdkCall<'static> {
unsafe { session.with_call(|call| call) }
}Implementations§
Source§impl TelemetrySession
impl TelemetrySession
Sourcepub unsafe fn with_call<R>(
self,
operation: impl for<'scope> FnOnce(&SdkCall<'scope>) -> R,
) -> R
pub unsafe fn with_call<R>( self, operation: impl for<'scope> FnOnce(&SdkCall<'scope>) -> R, ) -> R
Executes an operation with the capabilities valid during a direct SCS callback, initialization call, or shutdown call.
§Safety
The caller must be executing synchronously on the game’s main thread as a direct call from SCS, while the telemetry session is active. The operation must not let the scoped capability escape its closure and must not unwind across the SDK ABI boundary.
Trait Implementations§
Source§impl Clone for TelemetrySession
impl Clone for TelemetrySession
Source§fn clone(&self) -> TelemetrySession
fn clone(&self) -> TelemetrySession
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for TelemetrySession
Auto Trait Implementations§
impl Freeze for TelemetrySession
impl RefUnwindSafe for TelemetrySession
impl Send for TelemetrySession
impl Sync for TelemetrySession
impl Unpin for TelemetrySession
impl UnsafeUnpin for TelemetrySession
impl UnwindSafe for TelemetrySession
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