use crate::context::{ReadContext, WriteContext};
use crate::error::Error;
use crate::serializer::Serializer;
use crate::type_id::TypeId;
use std::marker::PhantomData;
impl<T: 'static> Serializer for PhantomData<T> {
type Target = Self;
#[inline(always)]
fn write_data(_: &Self, _: &mut WriteContext) -> Result<(), Error> {
Ok(())
}
#[inline(always)]
fn read_data(_: &mut ReadContext) -> Result<Self, Error> {
Ok(PhantomData)
}
#[inline(always)]
fn default_value(_: &mut ReadContext) -> Result<Self, Error> {
Ok(PhantomData)
}
#[inline(always)]
fn reserved_space() -> usize {
0
}
#[inline(always)]
fn static_type_id() -> TypeId {
TypeId::NONE
}
}