Files
CPP_Core/psc_global_include/export.h
T
2026-07-24 10:54:45 +08:00

22 lines
1.3 KiB
C++

#pragma once
#if defined(__GNUC__) || defined(__clang__)
#define FUNC_NAME_ __PRETTY_FUNCTION__
#elif defined(_MSC_VER)
#define FUNC_NAME_ __FUNCSIG__
#else
#define FUNC_NAME_ ""
#endif
#define LOG_POS std::string(__func__) + std::string(" ") + __FILE__ + std::string(":") + std::to_string(__LINE__) + " " + std::string(FUNC_NAME_)
#define LOG_POS_SIMPLE std::string(__func__) + std::string(" ") + __FILE__ + std::string(":") + std::to_string(__LINE__)
#define VAR_STR(P) ("[" + std::string(#P) + ":" + Psc::to_string(P) + std::string("], "))
#define VAR_STR_1(P1) VAR_STR(P1)
#define VAR_STR_2(P1, P2) VAR_STR_1(P1) + VAR_STR(P2)
#define VAR_STR_3(P1, P2, P3) VAR_STR_2(P1, P2) + VAR_STR(P3)
#define VAR_STR_4(P1, P2, P3, P4) VAR_STR_3(P1, P2, P3) + VAR_STR(P4)
#define VAR_STR_5(P1, P2, P3, P4, P5) VAR_STR_4(P1, P2, P3, P4) + VAR_STR(P5)
#define VAR_STR_6(P1, P2, P3, P4, P5, P6) VAR_STR_5(P1, P2, P3, P4, P5) + VAR_STR(P6)
#define VAR_STR_7(P1, P2, P3, P4, P5, P6, P7) VAR_STR_6(P1, P2, P3, P4, P5, P6) + VAR_STR(P7)
#define VAR_STR_8(P1, P2, P3, P4, P5, P6, P7, P8) VAR_STR_7(P1, P2, P3, P4, P5, P6, P7) + VAR_STR(P8)
#define VAR_STR_9(P1, P2, P3, P4, P5, P6, P7, P8, P9) VAR_STR_8(P1, P2, P3, P4, P5, P6, P7, P8) + VAR_STR(P9)
#define VAR_STR_10(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) VAR_STR_9(P1, P2, P3, P4, P5, P6, P7, P8, P9) + VAR_STR(P10)