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.
53 lines
1.4 KiB
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>>;
|
|
|