6 releases

0.0.6 Sep 30, 2020
0.0.5 Mar 5, 2020
0.0.4 Nov 11, 2019

#1685 in Parser implementations

Download history 670/week @ 2024-11-17 927/week @ 2024-11-24 690/week @ 2024-12-01 671/week @ 2024-12-08 790/week @ 2024-12-15 250/week @ 2024-12-22 273/week @ 2024-12-29 848/week @ 2025-01-05 941/week @ 2025-01-12 737/week @ 2025-01-19 648/week @ 2025-01-26 706/week @ 2025-02-02 917/week @ 2025-02-09 701/week @ 2025-02-16 787/week @ 2025-02-23 725/week @ 2025-03-02

3,262 downloads per month
Used in 49 crates (14 directly)

MIT/Apache

18KB
345 lines

Crates.io Crates.io

url2

Url2: Ergonomic wrapper around the popular url crate

Example

#[macro_use]
extern crate url2;

fn main() {
    let mut url = url2!("https://{}/", "example.com");
    url.query_unique()
        .set_pair("hello", "world")
        .set_pair("foo", "bar");

    assert!(url.query_unique_contains_key("hello"));
    assert_eq!("bar", url.query_unique_get("foo").unwrap());

    url.query_unique().remove("foo");

    assert_eq!(
        "https://example.com/?hello=world",
        url.as_str(),
    )
}

lib.rs:

Url2: Ergonomic wrapper around the popular url crate

Example

#[macro_use]
extern crate url2;

fn main() {
    let mut url = url2!("https://{}/", "example.com");
    url.query_unique()
        .set_pair("hello", "world")
        .set_pair("foo", "bar");

    assert!(url.query_unique_contains_key("hello"));
    assert_eq!("bar", url.query_unique_get("foo").unwrap());

    url.query_unique().remove("foo");

    assert_eq!(
        "https://example.com/?hello=world",
        url.as_str(),
    )
}

Dependencies

~2–3MB
~54K SLoC