OxIRI

actions status Latest Version Released API docs

OxIRI is a simple and fast implementation of IRIs based on RFC 3987.

It allows zero stack allocation IRI validation and resolution.

Example: ```rust use oxiri::Iri;

// Parse and validate base IRI let base_iri = Iri::parse("http://foo.com/bar/baz")?;

// Validate and resolve relative IRI let iri = baseiri.resolve("bat#foo")?; asserteq!("http://foo.com/bar/bat#foo", iri.into_inner());

// Extract IRI components asserteq!(iri.scheme(), "http"); asserteq!(iri.authority(), Some("foo.com")); asserteq!(iri.path(), "/bar/bat"); asserteq!(iri.query(), None); assert_eq!(iri.fragment(), Some("foo")); ```

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Futures by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.