6 releases

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

#1005 in Parser implementations

Download history 738/week @ 2023-11-20 420/week @ 2023-11-27 379/week @ 2023-12-04 623/week @ 2023-12-11 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

2,181 downloads per month
Used in 43 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.7MB
~83K SLoC