Download

check and checkSlow

I can’t find docs on their intended use. Different types of assertions?

By default checkSlow is only run in debug builds while check will run in development builds.

though the comment says different.


//
// Check for **development **only.
//
#if DO_GUARD_SLOW
    #define checkSlow(expr)                    { if(UNLIKELY(!(expr))) { FDebug::LogAssertFailedMessage( #expr, __FILE__, __LINE__, TEXT("") ); _DebugBreakAndPromptForRemote(); FDebug::AssertFailed(#expr, __FILE__, __LINE__); CA_ASSUME(false); } }
    #define checkfSlow(expr, format, ...)    { if(UNLIKELY(!(expr))) { FDebug::LogAssertFailedMessage( #expr, __FILE__, __LINE__, format, ##__VA_ARGS__ ); _DebugBreakAndPromptForRemote(); FDebug::AssertFailed( #expr, __FILE__, __LINE__, format, ##__VA_ARGS__ ); CA_ASSUME(false); } }
    #define verifySlow(expr)                { if(UNLIKELY(!(expr))) { FDebug::LogAssertFailedMessage( #expr, __FILE__, __LINE__, TEXT("") ); _DebugBreakAndPromptForRemote(); FDebug::AssertFailed(#expr, __FILE__, __LINE__); CA_ASSUME(false); } }
#else
    #define checkSlow(expr)                    { CA_ASSUME(expr); }
    #define checkfSlow(expr, format, ...)    { CA_ASSUME(expr); }
    #define verifySlow(expr)                { if(UNLIKELY(!(expr))) { CA_ASSUME(false); } }
#endif