This crate aims to provide high-level, rust-y bindings for the ENet library. ENet is a networking library for games that builds on UDP, offering optional reliability, congestion control, connection-orientation and other related features. For more information, check out the ENet Website.
For now, this library is alpha. It builds on the C-bindings for ENet, the enet-sys crate. A lot of the functionality is there, but not everything. Also, since ENet has pretty unclear lifetime semantics, you might actually run into cases where things crash. In those cases, or when something is missing/not yet in the API, open a bug report, and I will look into it as soon as possible.
To check what the latest released version is, check on
https://crates.io/crates/enet, or use cargo add
from
cargo edit to automatically add a
dependency to the most recent version.
Installation is as simple as adding this to your Cargo.toml
:
[dependencies]
enet = "0.3.0"
Documentation is available on https://docs.rs/enet or by running cargo doc
.
An example server and client can be found in the examples
directory.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.