# HG changeset patch # User unC0Rr # Date 1542729384 -3600 # Node ID a239e4243cf908ac86bee46992b734014bf28fed # Parent 9f4d75fa4a2c435612e700cdf4523534380750ce Start outlining ipc subsystem diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/hedgewars-engine-messages/src/messages.rs --- a/rust/hedgewars-engine-messages/src/messages.rs Tue Nov 20 16:18:42 2018 +0100 +++ b/rust/hedgewars-engine-messages/src/messages.rs Tue Nov 20 16:56:24 2018 +0100 @@ -220,7 +220,7 @@ ChatMessage(str) => ems![b's', str], TeamMessage(str) => ems![b'b', str], Error(str) => ems![b'E', str], - Warning(str) => unreachable!(), + Warning(_) => unreachable!(), StopSyncing => unreachable!(), GameOver => em![b'q'], GameInterrupted => em![b'Q'], diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/hedgewars-engine-messages/src/parser.rs --- a/rust/hedgewars-engine-messages/src/parser.rs Tue Nov 20 16:18:42 2018 +0100 +++ b/rust/hedgewars-engine-messages/src/parser.rs Tue Nov 20 16:56:24 2018 +0100 @@ -70,7 +70,7 @@ named!(unordered_message<&[u8], UnorderedEngineMessage>, alt!( do_parse!(tag!("?") >> ( Ping )) | do_parse!(tag!("!") >> ( Ping )) - | do_parse!(tag!("E") >> s: string_tail >> ( Error(s)) ) + | do_parse!(tag!("E") >> s: string_tail >> ( UnorderedEngineMessage::Error(s)) ) | do_parse!(tag!("W") >> s: string_tail >> ( Warning(s)) ) | do_parse!(tag!("s") >> s: string_tail >> ( ChatMessage(s)) ) | do_parse!(tag!("b") >> s: string_tail >> ( TeamMessage(s)) ) // TODO: wtf is the format diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/lib-hedgewars-engine/Cargo.toml --- a/rust/lib-hedgewars-engine/Cargo.toml Tue Nov 20 16:18:42 2018 +0100 +++ b/rust/lib-hedgewars-engine/Cargo.toml Tue Nov 20 16:56:24 2018 +0100 @@ -7,11 +7,13 @@ [dependencies] gfx = "0.17" gfx_device_gl = "0.15" +netbuf = "0.4" land2d = { path = "../land2d" } lfprng = { path = "../lfprng" } integral-geometry = { path = "../integral-geometry" } landgen = { path = "../landgen" } +hedgewars-engine-messages = { path = "../hedgewars-engine-messages" } [lib] name = "hedgewars_engine" diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/lib-hedgewars-engine/src/command.rs --- a/rust/lib-hedgewars-engine/src/command.rs Tue Nov 20 16:18:42 2018 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -pub enum Command { - ChatMessage(String), -} diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/lib-hedgewars-engine/src/ipc.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/lib-hedgewars-engine/src/ipc.rs Tue Nov 20 16:56:24 2018 +0100 @@ -0,0 +1,13 @@ +use hedgewars_engine_messages::{messages::*, parser}; +use netbuf::*; + +pub struct IPC { + in_buffer: Buf, + out_buffer: Buf, +} + +impl IPC { + pub fn new() -> Self { + + } +} diff -r 9f4d75fa4a2c -r a239e4243cf9 rust/lib-hedgewars-engine/src/lib.rs --- a/rust/lib-hedgewars-engine/src/lib.rs Tue Nov 20 16:18:42 2018 +0100 +++ b/rust/lib-hedgewars-engine/src/lib.rs Tue Nov 20 16:56:24 2018 +0100 @@ -1,5 +1,5 @@ mod world; -mod command; +mod ipc; #[repr(C)] pub struct EngineInstance {