macro_rules! tags {
($($(#[$doc:meta])* $name:ident = $value:expr;)*) => {
$($(#[$doc])* pub const $name: u8 = $value;)*
pub const ALL: &[(&str, u8)] = &[$((stringify!($name), $value)),*];
};
}
tags! {
NULL = 0;
FALSE = 1;
TRUE = 2;
INT = 3;
FLOAT = 4;
STR = 5;
LIST = 6;
MAP = 7;
REF = 8;
BYTES = 9;
INTS = 10;
STREAM = 11;
FLOAT32 = 12;
FLOATS = 13;
FLOATS32 = 14;
}