rfc2396 1.1.0

A library for validating strings as RFC2396-compliant URIs
Documentation
use anyhow::Context;

test_cases! {
    multi_char::rel_segment: {
        case_001: "!+egxf1",
        case_002: "!9dxPOB",
        case_003: "!d1%95rh",
        case_004: "$A!$2tr",
        case_005: "$WAIWzOzC3",
        case_006: "%96Jc%8EuVqFH",
        case_007: "%A9a(2Wj13R6",
        case_008: "%D4cMJ",
        case_009: "&VefJ",
        case_010: "&cJ3gk",
        case_011: "&u",
        case_012: "'bj",
        case_013: "(je(MY!ED",
        case_014: "(mhxh",
        case_015: "*FEgCVl",
        case_016: "+6*6h!YnV",
        case_017: "+8rTbP*",
        case_018: "+Y~E50",
        case_019: ",7",
        case_020: ",m~5Wijd",
        case_021: "-",
        case_022: "-)",
        case_023: "-Z",
        case_024: ".",
        case_025: ".%22)F",
        case_026: ".('",
        case_027: ".8",
        case_028: ".D.u-hx$",
        case_029: "0AdO",
        case_030: "2+gK",
        case_031: "2wf",
        case_032: "4",
        case_033: "4mO",
        case_034: "5hT(bpEu2_",
        case_035: "6Q!",
        case_036: "77",
        case_037: "7P*!",
        case_038: "8!oZxv8Lrn",
        case_039: "8Rk.tU~E",
        case_040: "8vr(@.",
        case_041: "8wwu4",
        case_042: "9nud)f",
        case_043: ";Sv9",
        case_044: ";fd",
        case_045: "=L@*G.(e",
        case_046: "C~zsQk",
        case_047: "E26%DC9zK+y7",
        case_048: "GTGo&*N=yp",
        case_049: "HH5ZSg9u@",
        case_050: "IlNEs",
        case_051: "JoPK7iVDe",
        case_052: "KABjbGD&5",
        case_053: "Kj2Zw",
        case_054: "Ls6n%F5M",
        case_055: "OL",
        case_056: "P2*~i",
        case_057: "Ru",
        case_058: "UbO=t0bv",
        case_059: "UbxX)&",
        case_060: "Y7PvNV",
        case_061: "Z6",
        case_062: "_mZ4@sF",
        case_063: "a,Js2c7j",
        case_064: "b0W",
        case_065: "cL7E!;wfxJ",
        case_066: "ccb",
        case_067: "d",
        case_068: "etm*V!PR",
        case_069: "f",
        case_070: "f%918'1OtMMM",
        case_071: "g",
        case_072: "gvxI%E013u",
        case_073: "h=xd",
        case_074: "h~b8",
        case_075: "iV%61J2d$08",
        case_076: "id-DK",
        case_077: "jC(",
        case_078: "lxPWl",
        case_079: "m&mW9P7Q",
        case_080: "m'y@iT",
        case_081: "m))Ge_p",
        case_082: "m+",
        case_083: "m_.SPx%4A3*k",
        case_084: "n",
        case_085: "o",
        case_086: "p-1,hqw",
        case_087: "rJv",
        case_088: "rK-'k",
        case_089: "rXjH11C29C",
        case_090: "rl_Q",
        case_091: "vaxX",
        case_092: "vloaalY",
        case_093: "w$1WY",
        case_094: "w*q+@HXK$",
        case_095: "we!,9toZ6",
        case_096: "x(yHVvd~",
        case_097: "xKiK*)UBn",
        case_098: "xuQ5u$J",
        case_099: "~"
    }
}