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/lib.rs

53 lines
1.4 KiB

//! # RST Node Core
//!
//! RST Node is a real-time strategy game about computers on a
//! network, fighting for dominance against a set of other network
//! operators. To operate a successful network you need to build
//! infrastructure, compute clusters, and defences on edge nodes.
//!
//! The game architecture is split between the game client and game
//! server. This library implements all required types and functions
//! to manage this state over a network connection.
//!
//! The main game interface is provided by [GameIf](crate::GameIf),
//! which is them implemented by [Server](crate::server::Server), and
//! [MatchClient](crate::client::MatchClient).
// Remove the warning spam
#![allow(warnings)]
#[macro_use]
extern crate const_env;
#[macro_use]
extern crate tracing;
pub(crate) mod _loop;
mod _if;
pub use _if::GameIf;
mod _match;
pub use _match::Match;
pub mod config;
pub mod data;
pub mod error;
pub mod gens;
pub mod io;
pub mod loader;
pub mod lobby;
pub mod mailbox;
pub mod map;
pub mod net;
pub mod server;
pub mod stats;
pub mod users;
pub mod wire;
pub use identity::Identity as Id;
/// ConvenienceWrapper around RwLock
pub(crate) type Lock<T> = async_std::sync::RwLock<T>;
pub(crate) type LockMap<K, V> = async_std::sync::RwLock<std::collections::BTreeMap<K, V>>;
pub(crate) type LockSet<T> = async_std::sync::RwLock<std::collections::BTreeSet<T>>;