Struct bonsaidb::client::url::form_urlencoded::Serializer
pub struct Serializer<'a, T>where
T: Target,{ /* private fields */ }
Expand description
Implementations§
§impl<'a, T> Serializer<'a, T>where
T: Target,
impl<'a, T> Serializer<'a, T>where T: Target,
pub fn new(target: T) -> Serializer<'a, T>
pub fn new(target: T) -> Serializer<'a, T>
Create a new application/x-www-form-urlencoded
serializer for the given target.
If the target is non-empty,
its content is assumed to already be in application/x-www-form-urlencoded
syntax.
pub fn for_suffix(target: T, start_position: usize) -> Serializer<'a, T>
pub fn for_suffix(target: T, start_position: usize) -> Serializer<'a, T>
Create a new application/x-www-form-urlencoded
serializer
for a suffix of the given target.
If that suffix is non-empty,
its content is assumed to already be in application/x-www-form-urlencoded
syntax.
pub fn clear(&mut self) -> &mut Serializer<'a, T>
pub fn clear(&mut self) -> &mut Serializer<'a, T>
Remove any existing name/value pair.
Panics if called after .finish()
.
pub fn encoding_override(
&mut self,
new: Option<&'a dyn Fn(&str) -> Cow<'_, [u8]>>
) -> &mut Serializer<'a, T>
pub fn encoding_override( &mut self, new: Option<&'a dyn Fn(&str) -> Cow<'_, [u8]>> ) -> &mut Serializer<'a, T>
Set the character encoding to be used for names and values before percent-encoding.
pub fn append_pair(&mut self, name: &str, value: &str) -> &mut Serializer<'a, T>
pub fn append_pair(&mut self, name: &str, value: &str) -> &mut Serializer<'a, T>
Serialize and append a name/value pair.
Panics if called after .finish()
.
pub fn append_key_only(&mut self, name: &str) -> &mut Serializer<'a, T>
pub fn append_key_only(&mut self, name: &str) -> &mut Serializer<'a, T>
Serialize and append a name of parameter without any value.
Panics if called after .finish()
.
pub fn extend_pairs<I, K, V>(&mut self, iter: I) -> &mut Serializer<'a, T>where
I: IntoIterator,
<I as IntoIterator>::Item: Borrow<(K, V)>,
K: AsRef<str>,
V: AsRef<str>,
pub fn extend_pairs<I, K, V>(&mut self, iter: I) -> &mut Serializer<'a, T>where I: IntoIterator, <I as IntoIterator>::Item: Borrow<(K, V)>, K: AsRef<str>, V: AsRef<str>,
Serialize and append a number of name/value pairs.
This simply calls append_pair
repeatedly.
This can be more convenient, so the user doesn’t need to introduce a block
to limit the scope of Serializer
’s borrow of its string.
Panics if called after .finish()
.
pub fn extend_keys_only<I, K>(&mut self, iter: I) -> &mut Serializer<'a, T>where
I: IntoIterator,
<I as IntoIterator>::Item: Borrow<K>,
K: AsRef<str>,
pub fn extend_keys_only<I, K>(&mut self, iter: I) -> &mut Serializer<'a, T>where I: IntoIterator, <I as IntoIterator>::Item: Borrow<K>, K: AsRef<str>,
Serialize and append a number of names without values.
This simply calls append_key_only
repeatedly.
This can be more convenient, so the user doesn’t need to introduce a block
to limit the scope of Serializer
’s borrow of its string.
Panics if called after .finish()
.
pub fn finish(&mut self) -> <T as Target>::Finished
pub fn finish(&mut self) -> <T as Target>::Finished
If this serializer was constructed with a string, take and return that string.
use form_urlencoded;
let encoded: String = form_urlencoded::Serializer::new(String::new())
.append_pair("foo", "bar & baz")
.append_pair("saison", "Été+hiver")
.finish();
assert_eq!(encoded, "foo=bar+%26+baz&saison=%C3%89t%C3%A9%2Bhiver");
Panics if called more than once.