Skip to main content

GameSchemaAvailability

Struct GameSchemaAvailability 

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

Per-game schema versions in which an official telemetry descriptor exists.

SCS versions three different contracts independently: the downloadable SDK archive, the Telemetry API negotiated by scs_telemetry_init, and the game telemetry schema supplied in the initialization parameters. Channel, configuration, and gameplay descriptor additions belong to the last of those domains. Consequently this value stores one minimum schema for ETS2 and another for ATS instead of pretending that an archive number or a Telemetry API version answers the same question.

A None entry is meaningful: the current official game header explicitly documents that descriptor as unavailable for that game. It is not an unknown-version wildcard. The SDK 1.0 through 1.14 header history is the source for the metadata attached to the built-in catalogs.

Implementations§

Source§

impl GameSchemaAvailability

Source

pub const fn new( ets2: Option<GameSchemaVersion>, ats: Option<GameSchemaVersion>, ) -> Self

Describes the first schema which exposes a descriptor in each game.

Use None only when the official headers explicitly exclude the descriptor for that game. Custom descriptors should still state their evidence explicitly instead of inheriting an implicit “all versions” policy.

Source

pub const fn available_since_ets2(self) -> Option<GameSchemaVersion>

Oldest ETS2 telemetry schema which exposes the descriptor.

Source

pub const fn available_since_ats(self) -> Option<GameSchemaVersion>

Oldest ATS telemetry schema which exposes the descriptor.

Trait Implementations§

Source§

impl Clone for GameSchemaAvailability

Source§

fn clone(&self) -> GameSchemaAvailability

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for GameSchemaAvailability

Source§

impl Debug for GameSchemaAvailability

Source§

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

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

impl Eq for GameSchemaAvailability

Source§

impl PartialEq for GameSchemaAvailability

Source§

fn eq(&self, other: &GameSchemaAvailability) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for GameSchemaAvailability

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, dest: *mut u8)

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

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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, 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.