5#include "CoreMinimal.h"
6#include "Detail/JsonObjectDeserialization.h"
7#include "Detail/JsonObjectSerialization.h"
17void Serialize(
const TOptional<T>& Field,
const FString& FieldName, FJsonObject&
JsonObject)
21 const TSharedRef<FJsonObject> InnerJsonObject = JsonObject::UStructToJsonObject<T>(Field.GetValue());
22 JsonObjectSerialization::SetObjectField(
JsonObject, FieldName, InnerJsonObject);
27void STREAMJSON_API Serialize(
const TOptional<uint32>& Field,
const FString& FieldName, FJsonObject&);
29void STREAMJSON_API Serialize(
const TOptional<FString>& Field,
const FString& FieldName, FJsonObject&);
31void STREAMJSON_API Serialize(
const TOptional<FDateTime>& Field,
const FString& FieldName, FJsonObject&);
34void Deserialize(
const FJsonObject&
JsonObject,
const FString& FieldName, TOptional<T>& Field)
36 const TSharedPtr<FJsonObject>* InnerJsonObject;
37 if (JsonObjectSerialization::TryGetObjectField(
JsonObject, FieldName, InnerJsonObject))
42 Field.Emplace(OutStruct);
47void STREAMJSON_API Deserialize<uint32>(
const FJsonObject&
JsonObject,
const FString& FieldName, TOptional<uint32>& Field);
49void STREAMJSON_API Deserialize<FDateTime>(
const FJsonObject&
JsonObject,
const FString& FieldName, TOptional<FDateTime>& Field);
Custom serialization and deserialization for types which aren't supported by UPROPERTY (e....
Definition: StreamJsonField.h:15
STREAMJSON_API bool JsonObjectToUStruct(const TSharedRef< FJsonObject > &JsonObject, const UStruct *StructDefinition, void *OutStruct)
Converts from a Json Object to a UStruct, using importText.
Definition: JsonObjectDeserialization.cpp:695
Conversion to and from dynamic JSON objects.
Definition: StreamJson.h:16