My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nomicon/games/rstnode/rst-core/src/net/gen.rs

52 lines
1.0 KiB

use crate::{
error::Error,
wire::{
AuthErr, Lobby, LobbyErr, LobbyId, LobbyUpdate, MatchErr, RegErr, Response, UpdateState,
User, UserId,
},
};
use chrono::{DateTime, Utc};
pub fn register(r: Result<UserId, RegErr>) -> Response {
Response::Register(r)
}
pub fn login(r: Result<User, AuthErr>) -> Response {
Response::Login(r)
}
pub fn logout(r: Result<(), AuthErr>) -> Response {
Response::Logout(r)
}
pub fn rooms(r: Vec<(String, LobbyId)>) -> Response {
Response::Rooms(r)
}
pub fn join(r: Result<Lobby, LobbyErr>) -> Response {
Response::Join(r)
}
pub fn leave(r: Result<(), LobbyErr>) -> Response {
Response::Leave(r)
}
pub fn ready(r: LobbyUpdate) -> Response {
Response::Ready(r)
}
pub fn start_req(r: DateTime<Utc>) -> Response {
Response::StartReq(r)
}
pub fn game_update(r: UpdateState) -> Response {
Response::GameUpdate(r)
}
pub fn leave_game(r: Result<(), MatchErr>) -> Response {
Response::LeaveGame(r)
}
pub fn invalid() -> Response {
Response::Invalid
}