Crate agnostic_net

Source
Expand description

Agnostic Network

Agnostic abstraction layer of std::net for any async runtime.

github LoC Build codecov

docs.rs crates.io crates.io license

§Introduction

Agnostic abstraction layer of std::net for any async runtime.

Builtin supports runtimes:

  • tokio
  • async-std
  • smol

§Installation

[dependencies]
agnostic-net = "0.1"
  • tokio

    agnostic-net = { version = "0.1", features = ["tokio"] }
  • smol

    agnostic-net = { version = "0.1", features = ["smol"] }
  • async-std

    agnostic-net = { version = "0.1", features = ["async-std"] }
§License

agnostic-net is under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, LICENSE-MIT for details.

Copyright (c) 2025 Al Liu.

Re-exports§

pub use agnostic_lite as runtime;
pub use agnostic_io as io;

Modules§

os
Operating system specific types and traits.

Traits§

Net
An abstraction layer for the async runtime’s network.
OwnedReadHalf
The abstraction of a owned read half of a TcpStream.
OwnedWriteHalf
The abstraction of a owned write half of a TcpStream.
ReuniteError
Error indicating that two halves were not from the same socket, and thus could not be reunited.
TcpListener
An abstraction layer for TCP listener.
TcpStream
The abstraction of a TCP stream.
ToSocketAddrs
Converts or resolves without blocking base on your async runtime to one or more SocketAddr values.
UdpSocket
The abstraction of a UDP socket.