Skip to main content

tsffs/magic/
mod.rs

1//! Magic number definitions
2
3use std::fmt::Display;
4
5use num_derive::{FromPrimitive, ToPrimitive};
6#[allow(unused_imports)]
7use num_traits::{FromPrimitive as _, ToPrimitive as _};
8use serde::{Deserialize, Serialize};
9
10#[repr(i64)]
11#[derive(Debug, Copy, Clone, PartialEq, Deserialize, Serialize, FromPrimitive, ToPrimitive)]
12pub enum MagicNumber {
13    StartBufferPtrSizePtr = 1,
14    StartBufferPtrSizeVal = 2,
15    StartBufferPtrSizePtrVal = 3,
16    StopNormal = 4,
17    StopAssert = 5,
18}
19
20impl Display for MagicNumber {
21    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
22        write!(f, "{}", *self as i64)
23    }
24}