Struct minecraft_server_query::FullStat
source · [−]pub struct FullStat {
pub hostname: String,
pub gametype: String,
pub game_id: String,
pub version: String,
pub plugins: String,
pub map: String,
pub numplayers: u32,
pub maxplayers: u32,
pub hostport: u16,
pub hostip: String,
pub player_list: Vec<String>,
}
Expand description
Full status information for a minecraft server
Fields
hostname: String
Server MoTD as displayed in the in-game server browser
gametype: String
Game type, hardcoded to "SMP"
game_id: String
Game ID, hardcoded to "MINECRAFT"
version: String
Game version ("1.7.10"
, "1.16.2"
…)
plugins: String
Server plugins. Format varies with server framework
map: String
Name of the default world
numplayers: u32
How many players are currently online
maxplayers: u32
Maximum number of players this server supports
hostport: u16
Port the server is listening on
hostip: String
IP that the server may receive connections on
player_list: Vec<String>
Names of the players currently online
Implementations
sourceimpl FullStat
impl FullStat
sourcepub fn from_payload(payload: &[u8]) -> Result<Self>
pub fn from_payload(payload: &[u8]) -> Result<Self>
Parse a full stat struct from a UDP payload. Fails if fields are missing, returning an IO error for missing data
let payload = b"...........\
hostname\0A Minecraft Server\0\
gametype\0SMP\0game_id\0MINECRAFT\0\
version\01.7.10\0plugins\0\0map\0world\0\
numplayers\02\0maxplayers\020\0\
hostport\025565\0hostip\0127.0.0.1\
\0\0\x01player_\0\0\
AldanTanneo\0Dinnerbone\0\0";
assert_eq!(
FullStat::from_payload(&payload[..])?,
FullStat {
hostname: "A Minecraft Server".to_string(),
gametype: "SMP".to_string(),
game_id: "MINECRAFT".to_string(),
version: "1.7.10".to_string(),
plugins: "".to_string(),
map: "world".to_string(),
numplayers: 2,
maxplayers: 20,
hostport: 25565,
hostip: "127.0.0.1".to_string(),
player_list: vec![
"AldanTanneo".to_string(),
"Dinnerbone".to_string(),
],
}
);
Trait Implementations
impl Eq for FullStat
impl StructuralEq for FullStat
impl StructuralPartialEq for FullStat
Auto Trait Implementations
impl RefUnwindSafe for FullStat
impl Send for FullStat
impl Sync for FullStat
impl Unpin for FullStat
impl UnwindSafe for FullStat
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more