UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VVMRuntimeError.h File Reference
#include "CoreMinimal.h"
#include "Delegates/Delegate.h"

Go to the source code of this file.

Classes

struct  Verse::SRuntimeDiagnosticInfo
 
class  FVerseRuntimeErrorDelegates
 

Namespaces

namespace  Verse
 

Macros

#define UE_API   COREUOBJECT_API
 
#define VERSE_RUNTIME_GLITCH_ENUM_DIAGNOSTICS(v)
 
#define VISIT_DIAGNOSTIC(Severity, EnumName, Description)   EnumName,
 
#define RAISE_VERSE_RUNTIME_ERROR_CODE(Diagnostic)
 
#define RAISE_VERSE_RUNTIME_ERROR(Diagnostic, Message)
 
#define RAISE_VERSE_RUNTIME_ERROR_FORMAT(Diagnostic, FormatString, ...)
 
#define RETURN_RAISE_VERSE_RUNTIME_ERROR_UNLESS(Cond, ErrCode, ErrStr, ...)
 

Enumerations

enum class  Verse::ERuntimeDiagnostic : uint16_t { Verse::VISIT_DIAGNOSTIC }
 
enum class  Verse::ERuntimeDiagnosticSeverity : uint8_t { Verse::UnrecoverableError }
 

Functions

UE_API DECLARE_LOG_CATEGORY_EXTERN (LogVerseRuntimeError, Log, All)
 
const SRuntimeDiagnosticInfoVerse::GetRuntimeDiagnosticInfo (const ERuntimeDiagnostic Diagnostic)
 
FString Verse::AsFormattedString (const ERuntimeDiagnostic &Diagnostic, const FText &MessageText)
 
void Verse::RaiseVerseRuntimeError (const Verse::ERuntimeDiagnostic Diagnostic, const FText &MessageText)
 
 DECLARE_MULTICAST_DELEGATE_TwoParams (FVerseUnwindRuntimeErrorHandler, const Verse::ERuntimeDiagnostic, const FText &)
 
 DECLARE_MULTICAST_DELEGATE_TwoParams (FVerseRuntimeErrorReportHandler, const Verse::ERuntimeDiagnostic, const FText &)
 

Macro Definition Documentation

◆ RAISE_VERSE_RUNTIME_ERROR

#define RAISE_VERSE_RUNTIME_ERROR (   Diagnostic,
  Message 
)
Value:
do \
{ \
::Verse::RaiseVerseRuntimeError(Diagnostic, MessageAsText); \
} \
while (0)
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition Text.h:385
static CORE_API FText FromString(const ANSICHAR *String)
Definition Text.cpp:1081

◆ RAISE_VERSE_RUNTIME_ERROR_CODE

#define RAISE_VERSE_RUNTIME_ERROR_CODE (   Diagnostic)
Value:
do \
{ \
const ::Verse::SRuntimeDiagnosticInfo& DiagnosticInfo = GetRuntimeDiagnosticInfo(Diagnostic); \
::Verse::RaiseVerseRuntimeError(Diagnostic, FText::FromString(DiagnosticInfo.Description)); \
} \
while (0)

◆ RAISE_VERSE_RUNTIME_ERROR_FORMAT

#define RAISE_VERSE_RUNTIME_ERROR_FORMAT (   Diagnostic,
  FormatString,
  ... 
)
Value:
do \
{ \
const FText MessageAsText(FText::FromString(FString::Printf(FormatString, ##__VA_ARGS__))); \
::Verse::RaiseVerseRuntimeError(Diagnostic, MessageAsText); \
} \
while (0)

◆ RETURN_RAISE_VERSE_RUNTIME_ERROR_UNLESS

#define RETURN_RAISE_VERSE_RUNTIME_ERROR_UNLESS (   Cond,
  ErrCode,
  ErrStr,
  ... 
)
Value:
do \
{ \
if (!(Cond)) \
{ \
RAISE_VERSE_RUNTIME_ERROR_FORMAT(::Verse::ERuntimeDiagnostic::ErrCode, ErrStr, ##__VA_ARGS__); \
return; \
} \
} \
while (false)

◆ UE_API

#define UE_API   COREUOBJECT_API

◆ VERSE_RUNTIME_GLITCH_ENUM_DIAGNOSTICS

#define VERSE_RUNTIME_GLITCH_ENUM_DIAGNOSTICS (   v)
Value:
v(UnrecoverableError, ErrRuntime_Internal, "An internal runtime error occurred. There is no other information available.") \
v(UnrecoverableError, ErrRuntime_TransactionAbortedByLanguage, "An internal transactional runtime error occurred. There is no other information available.") \
v(UnrecoverableError, ErrRuntime_NativeInternal, "An internal runtime error occurred in native code that was called from Verse. There is no other information available.") \
v(UnrecoverableError, ErrRuntime_GeneratedNativeInternal, "An internal runtime error occurred in (generated) native code that was called from Verse. There is no other information available.") \
v(UnrecoverableError, ErrRuntime_InfiniteLoop, "The runtime terminated prematurely because Verse code was running in an infinite loop.") \
v(UnrecoverableError, ErrRuntime_ComputationLimitExceeded, "The runtime terminated prematurely because Verse code took too long to execute within a single server tick. Try offloading heavy computation to async contexts.") \
v(UnrecoverableError, ErrRuntime_Overflow, "Overflow encountered.") \
v(UnrecoverableError, ErrRuntime_Underflow, "Underflow encountered.") \
v(UnrecoverableError, ErrRuntime_FloatingPointOverflow, "Floating-point overflow encountered.") \
v(UnrecoverableError, ErrRuntime_IntegerOverflow, "Integer overflow encountered.") \
v(UnrecoverableError, ErrRuntime_ErrorRequested, "A runtime error was explicitly raised from user code.") \
v(UnrecoverableError, ErrRuntime_IntegerBoundsExceeded, "A value does not fall inside the representable range of a Verse integer.") \
v(UnrecoverableError, ErrRuntime_MemoryLimitExceeded, "Exceeded memory limit(s).") \
v(UnrecoverableError, ErrRuntime_DivisionByZero, "Division by zero attempted.") \
v(UnrecoverableError, ErrRuntime_WeakMapInvalidKey, "Invalid key used to access persistent `var` `weak_map`.") \
v(UnrecoverableError, ErrRuntime_InvalidVarRead, "Attempted to read a `var` out of an invalid object.") \
v(UnrecoverableError, ErrRuntime_InvalidVarWrite, "Attempted to write to a `var` of an invalid object.") \
v(UnrecoverableError, ErrRuntime_InvalidFunctionCall, "Attempted to call an invalid function.") \
v(UnrecoverableError, ErrRuntime_MathIntrinsicCallFailure, "A math intrinsic failed.") \
v(UnrecoverableError, ErrRuntime_InvalidArrayLength, "Invalid array length.") \
v(UnrecoverableError, ErrRuntime_InvalidStringLength, "Invalid string length.") \
v(UnrecoverableError, ErrRuntime_InvalidLeaderboard, "Leaderboard failed to compile and cannot be instantiated.") \
v(UnrecoverableError, ErrRuntime_FailedToRegisterLeaderboard, "Leaderboard could not be registered with the back end.") \
v(UnrecoverableError, ErrRuntime_UnregisteredLeaderboard, "Trying to interact with an unregistered Leaderboard.")
float v
Definition radaudio_mdct.cpp:62

◆ VISIT_DIAGNOSTIC

#define VISIT_DIAGNOSTIC (   Severity,
  EnumName,
  Description 
)    EnumName,

Function Documentation

◆ DECLARE_LOG_CATEGORY_EXTERN()

UE_API DECLARE_LOG_CATEGORY_EXTERN ( LogVerseRuntimeError  ,
Log  ,
All   
)

◆ DECLARE_MULTICAST_DELEGATE_TwoParams() [1/2]

DECLARE_MULTICAST_DELEGATE_TwoParams ( FVerseRuntimeErrorReportHandler  ,
const Verse::ERuntimeDiagnostic  ,
const FText  
)

◆ DECLARE_MULTICAST_DELEGATE_TwoParams() [2/2]

DECLARE_MULTICAST_DELEGATE_TwoParams ( FVerseUnwindRuntimeErrorHandler  ,
const Verse::ERuntimeDiagnostic  ,
const FText  
)