#![allow(dead_code)] use kparse::parser_error::Hints; use kparse::provider::{StdTracker, TrackData, TrackedData}; use kparse::{Code, ParseSpan, ParserError, ParserResult, Track}; use nom_locate::LocatedSpan; use std::fmt::{Debug, Display, Formatter}; use std::mem::size_of; enum ZCode { ZOne, ZTwo, } impl Copy for ZCode {} impl Clone for ZCode { fn clone(&self) -> Self { unimplemented!() } } impl Display for ZCode { fn fmt(&self, _: &mut Formatter<'_>) -> std::fmt::Result { unimplemented!() } } impl Debug for ZCode { fn fmt(&self, _: &mut Formatter<'_>) -> std::fmt::Result { unimplemented!() } } impl Eq for ZCode {} impl PartialEq for ZCode { fn eq(&self, _: &Self) -> bool { unimplemented!() } } impl Code for ZCode { const NOM_ERROR: Self = Self::ZOne; } #[derive(Debug, Clone, Copy)] struct Nummer<'s> { nummer: u32, span: ParseSpan<'s, ZCode, &'s str>, } #[test] fn test_size2() { dbg!(size_of::()); dbg!(size_of::()); dbg!(size_of::<&str>()); dbg!(size_of::()); dbg!(size_of::>()); dbg!(size_of::>()); dbg!(size_of::>()); dbg!(size_of::>>()); dbg!(size_of::()); dbg!(size_of::>()); dbg!(size_of::>()); dbg!(size_of::>>()); dbg!(size_of::>()); dbg!(size_of::>()); dbg!(size_of::>()); dbg!(size_of::>()); }