pub struct UrlEncodedDataPairScanner<'a> {
pub original_data_str: &'a str,
/* private fields */
}
Expand description
§A scanner which iterates (decoded_key, decoded_value) pairs in order.
Fields§
§original_data_str: &'a str
Implementations§
Source§impl<'a> UrlEncodedDataPairScanner<'a>
§Lazy iterator yields pairs
impl<'a> UrlEncodedDataPairScanner<'a>
§Lazy iterator yields pairs
Sourcepub fn iter(&self) -> impl Iterator<Item = Pair<'_>>
pub fn iter(&self) -> impl Iterator<Item = Pair<'_>>
§Iterator of pairs
§example:
use url_encoded_data::*;
let qs = "a=1&b=2&c=3&c=4&key_without_value&=value_without_key".to_string();
for s in [
qs.as_str(),
("https://abc.com/?".to_string() + qs.as_str()).as_str(),
("https://abc.com/?????".to_string() + qs.as_str()).as_str(),
]
.iter()
{
let q = UrlEncodedDataPairScanner::from(*s);
println!("got qs: {}", q);
let pairs_expected_as_str = [
("a", "1"),
("b", "2"),
("c", "3"),
("c", "4"),
("key_without_value", ""),
("", "value_without_key"),
];
for (i, (k, v)) in q.iter().enumerate() {
let (k_, v_) = pairs_expected_as_str[i];
assert_eq!(k.as_ref(), k_);
assert_eq!(v.as_ref(), v_);
}
}
Sourcepub fn parse_from_str(s: &'a str) -> Self
pub fn parse_from_str(s: &'a str) -> Self
§Iterator of pairs
§example:
use url_encoded_data::UrlEncodedDataPairScanner;
let qs = "a=1&b=2&c=3&c=4&key_without_value&=value_without_key".to_string();
for s in [
qs.as_str(),
("https://abc.com/?".to_string() + qs.as_str()).as_str(),
("https://abc.com/?????".to_string() + qs.as_str()).as_str(),
]
.iter()
{
let q = UrlEncodedDataPairScanner::parse_from_str(s);
println!("got qs: {}", q);
let pairs_expected_as_str = [
("a", "1"),
("b", "2"),
("c", "3"),
("c", "4"),
("key_without_value", ""),
("", "value_without_key"),
];
for (i, (k, v)) in q.iter().enumerate() {
let (k_, v_) = pairs_expected_as_str[i];
assert_eq!(k.as_ref(), k_);
assert_eq!(v.as_ref(), v_);
}
}
Trait Implementations§
Source§impl<'a> Clone for UrlEncodedDataPairScanner<'a>
impl<'a> Clone for UrlEncodedDataPairScanner<'a>
Source§fn clone(&self) -> UrlEncodedDataPairScanner<'a>
fn clone(&self) -> UrlEncodedDataPairScanner<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> Display for UrlEncodedDataPairScanner<'a>
impl<'a> Display for UrlEncodedDataPairScanner<'a>
Auto Trait Implementations§
impl<'a> Freeze for UrlEncodedDataPairScanner<'a>
impl<'a> RefUnwindSafe for UrlEncodedDataPairScanner<'a>
impl<'a> Send for UrlEncodedDataPairScanner<'a>
impl<'a> Sync for UrlEncodedDataPairScanner<'a>
impl<'a> Unpin for UrlEncodedDataPairScanner<'a>
impl<'a> UnwindSafe for UrlEncodedDataPairScanner<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more