5#include "Containers/ContainersFwd.h"
6#include "Containers/StringFwd.h"
9#include "Memory/MemoryFwd.h"
10#include "Memory/MemoryView.h"
11#include "Memory/SharedBuffer.h"
12#include "Serialization/CompactBinary.h"
13#include "Templates/Function.h"
32
33
34
35
36
37
38
39
40
41
42
43
44
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
72
73
74
75
76
77
78
79
80
81
97
98
99
100
101
102
103
178 OutValue = Field.AsHash(Default);
191template <
typename T,
typename Allocator>
194 const uint64 Length = Field.AsArrayView().Num();
197 OutValue.Reset((int32)Length);
198 bool bOk = !Field.HasError();
199 for (
const FCbFieldView& ElementField : Field)
201 bOk = LoadFromCompactBinary(ElementField, OutValue.Emplace_GetRef()) & bOk;
207 UE::Serialization::Private::LogFieldTooLargeForArrayWarning(Length);
bool LoadFromCompactBinary(FCbFieldView Field, FUtf8StringBuilderBase &OutValue)
uint64 MeasureCompactBinary(FMemoryView View, ECbFieldType Type=ECbFieldType::HasFieldType)
void CompactBinaryToJson(const FCbObjectView &Object, FWideStringBuilderBase &Builder)
void CompactBinaryToJson(const FCbArrayView &Array, FWideStringBuilderBase &Builder)
void CompactBinaryToJson(const FCbFieldView &Field, FWideStringBuilderBase &Builder)
bool LoadFromCompactBinary(FCbFieldView Field, FWideStringBuilderBase &OutValue)
void CompactBinaryToCompactJson(const FCbObjectView &Object, FUtf8StringBuilderBase &Builder)
void CompactBinaryToJson(const FCbArrayView &Array, FUtf8StringBuilderBase &Builder)
void CompactBinaryToCompactJson(const FCbArrayView &Array, FWideStringBuilderBase &Builder)
bool LoadFromCompactBinary(FCbFieldView Field, FString &OutValue)
bool LoadFromCompactBinary(FCbFieldView Field, FCbObjectId &OutValue, const FCbObjectId &Default=FCbObjectId())
bool LoadFromCompactBinary(FCbFieldView Field, FGuid &OutValue, const FGuid &Default)
void CompactBinaryToCompactJson(const FCbFieldView &Field, FUtf8StringBuilderBase &Builder)
void CompactBinaryToCompactJson(const FCbObjectView &Object, FWideStringBuilderBase &Builder)
void CompactBinaryToCompactJson(const FCbArrayView &Array, FUtf8StringBuilderBase &Builder)
void CompactBinaryToCompactJson(const FCbFieldView &Field, FWideStringBuilderBase &Builder)
bool TryMeasureCompactBinary(FMemoryView InView, ECbFieldType &OutType, uint64 &OutSize, ECbFieldType InType=ECbFieldType::HasFieldType)
bool LoadFromCompactBinary(FCbFieldView Field, TArray< T, Allocator > &OutValue)
bool LoadFromCompactBinary(FCbFieldView Field, int8 &OutValue, const int8 Default=0)
bool LoadFromCompactBinary(FCbFieldView Field, uint16 &OutValue, const uint16 Default=0)
bool LoadFromCompactBinary(FCbFieldView Field, int32 &OutValue, const int32 Default=0)
void CompactBinaryToJson(const FCbObjectView &Object, FUtf8StringBuilderBase &Builder)
void SaveCompactBinary(FArchive &Ar, const FCbArrayView &Array)
bool LoadFromCompactBinary(FCbFieldView Field, bool &OutValue, const bool Default=false)
bool LoadFromCompactBinary(FCbFieldView Field, FGuid &OutValue)
void SaveCompactBinary(FArchive &Ar, const FCbFieldView &Field)
bool LoadFromCompactBinary(FCbFieldView Field, int64 &OutValue, const int64 Default=0)
bool LoadFromCompactBinary(FCbFieldView Field, uint64 &OutValue, const uint64 Default=0)
void SaveCompactBinary(FArchive &Ar, const FCbObjectView &Object)
bool LoadFromCompactBinary(FCbFieldView Field, uint8 &OutValue, const uint8 Default=0)
FCbField LoadCompactBinary(FArchive &Ar, FCbBufferAllocator Allocator=FUniqueBuffer::Alloc)
bool LoadFromCompactBinary(FCbFieldView Field, double &OutValue, const double Default=0.0)
bool LoadFromCompactBinary(FCbFieldView Field, uint32 &OutValue, const uint32 Default=0)
bool LoadFromCompactBinary(FCbFieldView Field, float &OutValue, const float Default=0.0f)
bool LoadFromCompactBinary(FCbFieldView Field, FIoHash &OutValue, const FIoHash &Default=FIoHash())
bool LoadFromCompactBinary(FCbFieldView Field, int16 &OutValue, const int16 Default=0)
void CompactBinaryToJson(const FCbFieldView &Field, FUtf8StringBuilderBase &Builder)
bool LoadFromCompactBinary(FCbFieldView Field, FName &OutValue)
uint64 AsUInt64(uint64 Default=0)
constexpr bool HasError() const
int64 AsInt64(int64 Default=0)
uint8 AsUInt8(uint8 Default=0)
uint32 AsUInt32(uint32 Default=0)
int32 AsInt32(int32 Default=0)
uint16 AsUInt16(uint16 Default=0)
float AsFloat(float Default=0.0f)
int16 AsInt16(int16 Default=0)
int8 AsInt8(int8 Default=0)
double AsDouble(double Default=0.0)
bool AsBool(bool bDefault=false)
FCbObjectId AsObjectId(const FCbObjectId &Default=FCbObjectId())
void LogFieldTooLargeForArrayWarning(uint64 FieldLength)