43inline T
GetEnv(
const char* key, T default_value) {
44 const char* val = std::getenv(key);
45 if (val ==
nullptr || !*val)
return default_value;
46 if constexpr (std::is_same_v<T, std::string>) {
47 return std::string(val);
48 }
else if constexpr (std::is_same_v<T, bool>) {
51 return !(s ==
"0" || s ==
"false" || s ==
"False" || s ==
"FALSE");
54 std::istringstream is(val);