Files
UnrealEngineUWP/Engine/Source/Programs/UnrealHeaderTool/Private/FileLineException.h
Marc Audy 11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00

28 lines
765 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Containers/UnrealString.h"
#include "Templates/IsValidVariadicFunctionArg.h"
struct FFileLineException
{
FString Message;
FString Filename;
int32 Line;
template <typename... Types>
UE_NORETURN static void VARARGS Throwf(FString&& Filename, int32 Line, const TCHAR* Fmt, Types... Args)
{
static_assert(TAnd<TIsValidVariadicFunctionArg<Types>...>::Value, "Invalid argument(s) passed to FError::Throwf");
ThrowfImpl(MoveTemp(Filename), Line, Fmt, Args...);
}
private:
UE_NORETURN static void VARARGS ThrowfImpl(FString&& Filename, int32 Line, const TCHAR* Fmt, ...);
FFileLineException(FString&& InMessage, FString&& InFilename, int32 InLine);
};