#host #domain #arc-str

no-std hostaddr

Extended types for working with net in Rust

1 unstable release

new 0.1.0 Mar 26, 2025

#26 in #host

MIT/Apache

97KB
2K SLoC

hostaddr

Extended types for working with net in Rust.

github LoC Build codecov

docs.rs crates.io crates.io license

English | 简体中文

Installation

[dependencies]
hostaddr = "0.1"

Example

use hostaddr::HostAddr;

// parse domain to String
let addr: HostAddr<String> = "example.com".parse().unwrap();

// parse domain with port to Arc<str>
let addr: HostAddr<std::sync::Arc<str>> = "example.com:8080".parse().unwrap();

// parse domain to Vec<u8>
let addr: HostAddr<Vec<u8>> = "example.com".parse().unwrap();

// parse a fully qualified domain name with port to Box<str>
let addr: HostAddr<Box<str>> = "example.com.:8080".parse().unwrap();

License

hostaddr 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.

Dependencies

~2.6–4MB
~75K SLoC