// THIS FILE IS AUTOMATICALLY GENERATED BY SPACETIMEDB. EDITS TO THIS FILE // WILL NOT BE SAVED. MODIFY TABLES IN YOUR MODULE SOURCE CODE INSTEAD. #![allow(unused, clippy::all)] use spacetimedb_sdk::__codegen::{self as __sdk, __lib, __sats, __ws}; #[derive(__lib::ser::Serialize, __lib::de::Deserialize, Clone, PartialEq, Debug)] #[sats(crate = __lib)] pub(super) struct JoinOrCreateLobbyArgs { pub lobby_id: u32, } impl From for super::Reducer { fn from(args: JoinOrCreateLobbyArgs) -> Self { Self::JoinOrCreateLobby { lobby_id: args.lobby_id, } } } impl __sdk::InModule for JoinOrCreateLobbyArgs { type Module = super::RemoteModule; } #[allow(non_camel_case_types)] /// Extension trait for access to the reducer `join_or_create_lobby`. /// /// Implemented for [`super::RemoteReducers`]. pub trait join_or_create_lobby { /// Request that the remote module invoke the reducer `join_or_create_lobby` to run as soon as possible. /// /// This method returns immediately, and errors only if we are unable to send the request. /// The reducer will run asynchronously in the future, /// and this method provides no way to listen for its completion status. /// /// Use [`join_or_create_lobby:join_or_create_lobby_then`] to run a callback after the reducer completes. fn join_or_create_lobby(&self, lobby_id: u32) -> __sdk::Result<()> { self.join_or_create_lobby_then(lobby_id, |_, _| {}) } /// Request that the remote module invoke the reducer `join_or_create_lobby` to run as soon as possible, /// registering `callback` to run when we are notified that the reducer completed. /// /// This method returns immediately, and errors only if we are unable to send the request. /// The reducer will run asynchronously in the future, /// and its status can be observed with the `callback`. fn join_or_create_lobby_then( &self, lobby_id: u32, callback: impl FnOnce(&super::ReducerEventContext, Result, __sdk::InternalError>) + Send + 'static, ) -> __sdk::Result<()>; } impl join_or_create_lobby for super::RemoteReducers { fn join_or_create_lobby_then( &self, lobby_id: u32, callback: impl FnOnce(&super::ReducerEventContext, Result, __sdk::InternalError>) + Send + 'static, ) -> __sdk::Result<()> { self.imp .invoke_reducer_with_callback(JoinOrCreateLobbyArgs { lobby_id }, callback) } }