Files
UnrealEngineUWP/Engine/Source/Programs/UnrealHeaderTool/Private/HeaderProvider.h
Ben Marsh 13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00

44 lines
824 B
C++

// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Containers/UnrealString.h"
class FUnrealSourceFile;
enum class EHeaderProviderSourceType
{
ClassName,
FileName,
Resolved,
Invalid,
};
class FHeaderProvider
{
friend bool operator==(const FHeaderProvider& A, const FHeaderProvider& B);
public:
FHeaderProvider(EHeaderProviderSourceType Type, FString&& Id);
FHeaderProvider()
: Type(EHeaderProviderSourceType::Invalid)
, Id(FString())
, Cache(nullptr)
{ }
FUnrealSourceFile* Resolve();
FString ToString() const;
const FString& GetId() const;
EHeaderProviderSourceType GetType() const;
private:
EHeaderProviderSourceType Type;
FString Id;
FUnrealSourceFile* Cache;
};
bool operator==(const FHeaderProvider& A, const FHeaderProvider& B);