You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
32 lines
852 B
C++
32 lines
852 B
C++
// Copyright 1998-2019 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>
|
|
FUNCTION_NO_RETURN_START
|
|
static void VARARGS Throwf(FString&& Filename, int32 Line, const TCHAR* Fmt, Types... Args)
|
|
FUNCTION_NO_RETURN_END
|
|
{
|
|
static_assert(TAnd<TIsValidVariadicFunctionArg<Types>...>::Value, "Invalid argument(s) passed to FError::Throwf");
|
|
|
|
ThrowfImpl(MoveTemp(Filename), Line, Fmt, Args...);
|
|
}
|
|
|
|
private:
|
|
FUNCTION_NO_RETURN_START
|
|
static void VARARGS ThrowfImpl(FString&& Filename, int32 Line, const TCHAR* Fmt, ...)
|
|
FUNCTION_NO_RETURN_END;
|
|
|
|
FFileLineException(FString&& InMessage, FString&& InFilename, int32 InLine);
|
|
};
|