-#ifndef UNSAFE_H
-#define UNSAFE_H
+#pragma once
#define reinterpret_cast(T, it) _unsafe_cast_##T(0, it)
#define X(T) T _unsafe_cast_##T(int dummy, ...) { return ...(0, T); }
X(float)
X(entity)
X(string)
-typedef float(...) rawfunc;
+USING(rawfunc, float(...));
X(rawfunc)
#undef X
-#define strid(s) ITOF(reinterpret_cast(int, s))
+#define _strid(s) ITOF(reinterpret_cast(int, s))
+#define strid(s) stof(sprintf("%i", s))
.int _unsafe_fld1, _unsafe_fld2;
int INTEGER_ONE;
{
INTEGER_ONE = reinterpret_cast(int, _unsafe_fld2) - reinterpret_cast(int, _unsafe_fld1);
}
-
-#endif