| Crates.io | hostport |
| lib.rs | hostport |
| version | 0.4.0 |
| created_at | 2025-04-27 11:03:48.085067+00 |
| updated_at | 2025-05-27 13:18:07.425774+00 |
| description | Parse and validate host:port combinations. |
| homepage | |
| repository | https://github.com/vikpe/hostport |
| max_upload_size | |
| id | 1651019 |
| size | 30,284 |
A Rust crate for parsing, validating, and working with
host:portcombinations.
0–65535cargo add hostport
use hostport::HostPort;
let hostport = HostPort::new("localhost", 8080).unwrap();
assert_eq!(hostport.host(), "localhost");
assert_eq!(hostport.port(), 8080);
assert_eq!(hostport.to_string(), "localhost:8080");
assert_eq!(hostport, "localhost:8080");
assert_eq!(hostport, "localhost:8080".parse::<HostPort>().unwrap());
use hostport::is_valid_host;
assert!(is_valid_host("quake.se"));
assert!(is_valid_host("quake-world.se"));
assert!(is_valid_host("localhost"));
assert!(is_valid_host("10.10.10.10"));
serde – Enables serialization and deserialization support via serde.cargo add hostport --features serde
or in Cargo.toml:
[dependencies]
hostport = { version = "x.y.z", features = ["serde"] }