6 releases

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

#1500 in Parser implementations

Download history 433/week @ 2023-12-18 167/week @ 2023-12-25 204/week @ 2024-01-01 701/week @ 2024-01-08 720/week @ 2024-01-15 633/week @ 2024-01-22 696/week @ 2024-01-29 964/week @ 2024-02-05 341/week @ 2024-02-12 455/week @ 2024-02-19 522/week @ 2024-02-26 830/week @ 2024-03-04 541/week @ 2024-03-11 938/week @ 2024-03-18 615/week @ 2024-03-25 690/week @ 2024-04-01

2,856 downloads per month
Used in 45 crates (13 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

~1.8–2.8MB
~84K SLoC