Files
UnrealEngineUWP/Engine/Source/Programs/UnrealHeaderTool/Private/FileLineException.h
Ryan Vance 7c51ff94af Merging //UE4/Dev-Main to Dev-VR (//UE4/Dev-VR)
CL 1 of 8
#rb integration

[CL 4748712 by Ryan Vance in Dev-VR branch]
2019-01-17 18:54:05 -05:00

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);
};