#pragma once #include #ifdef BRYNET_HAVE_LANG_CXX17 #include #else #include #endif namespace brynet { namespace base { #ifdef BRYNET_HAVE_LANG_CXX17 using BrynetAny = std::any; template auto cast(const BrynetAny& ud) { return std::any_cast(&ud); } #else using BrynetAny = int64_t; template const T* cast(const BrynetAny& ud) { return static_cast(&ud); } #endif } }