23 lines
380 B
Rust
23 lines
380 B
Rust
use crate::se::{Serializer, Serialize};
|
|
|
|
pub struct Tag<'a, T> {
|
|
name: &'a str,
|
|
value: T
|
|
}
|
|
|
|
impl<'a, T> Tag<'a, T> {
|
|
pub fn new(name: &'a str, value: T) -> Self {
|
|
Self { name, value }
|
|
}
|
|
}
|
|
|
|
impl<'a, T> Serialize for Tag<'a, T>
|
|
where
|
|
T: Serialize
|
|
{
|
|
fn serialize<S>(&self, s: S) -> Result<(), S::Error>
|
|
where S: Serializer
|
|
{
|
|
s.serialize_unit(self.name, &self.value)
|
|
}
|
|
} |