You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
73 lines
1.9 KiB
C++
73 lines
1.9 KiB
C++
|
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
||
|
|
|
||
|
|
#include "DerivedDataCacheKey.h"
|
||
|
|
|
||
|
|
#include "Algo/AllOf.h"
|
||
|
|
#include "Misc/StringBuilder.h"
|
||
|
|
#include "UObject/NameTypes.h"
|
||
|
|
|
||
|
|
namespace UE
|
||
|
|
{
|
||
|
|
namespace DerivedData
|
||
|
|
{
|
||
|
|
|
||
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
|
||
|
|
FCacheBucket::FCacheBucket(FStringView Name)
|
||
|
|
: Index(FName(Name).GetDisplayIndex().ToUnstableInt())
|
||
|
|
{
|
||
|
|
check(Algo::AllOf(Name, FChar::IsAlnum));
|
||
|
|
}
|
||
|
|
|
||
|
|
void FCacheBucket::ToString(FAnsiStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
verify(FName::CreateFromDisplayId(FNameEntryId::FromUnstableInt(Index), 0).TryAppendAnsiString(Builder));
|
||
|
|
}
|
||
|
|
|
||
|
|
void FCacheBucket::ToString(FWideStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
FName::CreateFromDisplayId(FNameEntryId::FromUnstableInt(Index), 0).AppendString(Builder);
|
||
|
|
}
|
||
|
|
|
||
|
|
bool FCacheBucketLexicalLess::operator()(FCacheBucket A, FCacheBucket B) const
|
||
|
|
{
|
||
|
|
return FNameEntryId::FromUnstableInt(A.ToIndex()).LexicalLess(FNameEntryId::FromUnstableInt(B.ToIndex()));
|
||
|
|
}
|
||
|
|
|
||
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
|
||
|
|
void FCacheKey::ToString(FAnsiStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
Builder << Bucket;
|
||
|
|
if (!Bucket.IsNull())
|
||
|
|
{
|
||
|
|
Builder << "/" << Hash;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void FCacheKey::ToString(FWideStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
Builder << Bucket;
|
||
|
|
if (!Bucket.IsNull())
|
||
|
|
{
|
||
|
|
Builder << TEXT("/") << Hash;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
|
||
|
|
void FCacheAttachmentKey::ToString(FAnsiStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
Builder << Key << '/' << Hash;
|
||
|
|
}
|
||
|
|
|
||
|
|
void FCacheAttachmentKey::ToString(FWideStringBuilderBase& Builder) const
|
||
|
|
{
|
||
|
|
Builder << Key << TEXT('/') << Hash;
|
||
|
|
}
|
||
|
|
|
||
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
|
||
|
|
} // DerivedData
|
||
|
|
} // UE
|