![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <type_traits>#include "CoreTypes.h"#include "Templates/Requires.h"#include "Templates/Identity.h"#include "Templates/IsValidVariadicFunctionArg.h"#include "Traits/IsCharType.h"#include "Traits/IsTEnumAsByte.h"#include "Traits/IsTString.h"#include "Containers/ContainersFwd.h"#include "FormatStringSanErrors.inl"Go to the source code of this file.
Namespaces | |
| namespace | UE |
| namespace | UE::Core |
| namespace | UE::Core::Private |
| implementation | |
| namespace | UE::Core::Private::FormatStringSan |
Macros | |
| #define | UE_CHECK_FORMAT_STRING(Fmt, ...) |
| #define | UE_CHECK_FORMAT_STRING_ERR(Err, Fmt, ...) (decltype(::UE::Core::Private::FormatStringSan::GetFmtArgCheckerType(Fmt, ##__VA_ARGS__))::Check(false, 0, Fmt).Status == Err) |
| #define | UE_VALIDATE_FORMAT_STRING(Format, ...) |
| #define | X(Name, Desc) Name, |
| #define | X(Name, Desc) case EFormatStringSanStatus::Name: static_assert(Err != EFormatStringSanStatus::Name, Desc); break; |
Typedefs | |
| template<typename FmtType , typename... ArgTypes> | |
| using | UE::Core::TCheckedFormatString = ::UE::Core::Private::FormatStringSan::TCheckedFormatStringPrivate< FmtType, TIdentity_T< ArgTypes >... > |
Enumerations | |
| enum class | UE::Core::Private::FormatStringSan::EFormatStringSanStatus { UE::Core::Private::FormatStringSan::Ok , UE::Core::Private::FormatStringSan::X } |
Functions | |
| template<EFormatStringSanStatus Err, typename T > | |
| constexpr void | UE::Core::Private::FormatStringSan::AssertFormatStatus () |
| template<typename CharType , typename... Ts> | |
| constexpr TCheckFormatString< CharType, std::decay_t< Ts >... > | UE::Core::Private::FormatStringSan::GetFmtArgCheckerType (const CharType *, Ts...) |
| template<typename CharType > | |
| constexpr bool | UE::Core::Private::FormatStringSan::CharIsDigit (CharType Char) |
| template<typename CharType > | |
| constexpr const CharType * | UE::Core::Private::FormatStringSan::SkipInteger (const CharType *Fmt) |
| template<typename CharType > | |
| constexpr bool | UE::Core::Private::FormatStringSan::CharIsIntegerFormatSpecifier (CharType Char) |
Variables | |
| template<typename T > | |
| constexpr bool | UE::Core::Private::FormatStringSan::bIsAConstString |
| template<typename T > | |
| constexpr bool | UE::Core::Private::FormatStringSan::TIsFloatOrDouble_V = std::is_same_v<float, T> || std::is_same_v<double, T> |
| template<typename T > | |
| constexpr bool | UE::Core::Private::FormatStringSan::TIsIntegralEnum_V = std::is_enum_v<T> || TIsTEnumAsByte_V<T> |
| #define UE_CHECK_FORMAT_STRING_ERR | ( | Err, | |
| Fmt, | |||
| ... | |||
| ) | (decltype(::UE::Core::Private::FormatStringSan::GetFmtArgCheckerType(Fmt, ##__VA_ARGS__))::Check(false, 0, Fmt).Status == Err) |
| #define X | ( | Name, | |
| Desc | |||
| ) | case EFormatStringSanStatus::Name: static_assert(Err != EFormatStringSanStatus::Name, Desc); break; |