5#include "Containers/Array.h"
6#include "Containers/Map.h"
28#define LOCTEXT_NAMESPACE "JsonObjectConverter"
95 template<
typename InStructType>
150 template<
typename InStructType>
166 template<
typename CharType,
template<
typename>
class PrintPolicy>
249 template<
typename OutStructType>
307 template<
typename OutStructType>
346 template<
typename OutStructType>
362 UE_LOG(
LogJson,
Warning,
TEXT(
"JsonArrayStringToUStruct - Error parsing one of the elements. json=[%s]"), *JsonString);
385 template<
typename OutStructType>
389 for (
int32 i = 0; i < JsonArray.Num(); ++i)
391 const auto&
Value = JsonArray[i];
421#undef LOCTEXT_NAMESPACE
SharedPointerInternals::TRawPtrProxy< ObjectType > MakeShareable(ObjectType *InObject)
Definition SharedPointer.h:1947
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
#define LOCTEXT(InKey, InTextLiteral)
Definition Internationalization.h:295
EJsonObjectConversionFlags
Definition JsonObjectConverter.h:31
@ SuppressClassNameForPersistentObject
@ WriteTextAsComplexString
#define UE_LOG(CategoryName, Verbosity, Format,...)
Definition LogMacros.h:270
const bool
Definition NetworkReplayStreaming.h:178
Definition JsonObjectConverter.h:56
static JSONUTILITIES_API TSharedPtr< FJsonValue > UPropertyToJsonValue(FProperty *Property, const void *Value, int64 CheckFlags=0, int64 SkipFlags=0, const CustomExportCallback *ExportCb=nullptr, FProperty *OuterProperty=nullptr, EJsonObjectConversionFlags ConversionFlags=EJsonObjectConversionFlags::None)
Definition JsonObjectConverter.cpp:419
static JSONUTILITIES_API bool GetTextFromObject(const TSharedRef< FJsonObject > &Obj, FText &TextOut)
Definition JsonObjectConverter.cpp:478
static bool UStructToJsonObjectString(const InStructType &InStruct, FString &OutJsonString, int64 CheckFlags=0, int64 SkipFlags=0, int32 Indent=0, const CustomExportCallback *ExportCb=nullptr, bool bPrettyPrint=true)
Definition JsonObjectConverter.h:151
TDelegate< bool(const TSharedPtr< FJsonValue > &JsonValue, FProperty *Property, void *Value)> CustomImportCallback
Definition JsonObjectConverter.h:82
static TSharedPtr< FJsonObject > UStructToJsonObject(const InStructType &InStruct, int64 CheckFlags=0, int64 SkipFlags=0, const CustomExportCallback *ExportCb=nullptr)
Definition JsonObjectConverter.h:96
static JSONUTILITIES_API FFormatNamedArguments ParseTextArgumentsFromJson(const TSharedPtr< const FJsonObject > &JsonObject)
Definition JsonObjectConverter.cpp:1296
static bool JsonObjectToUStruct(const TSharedRef< FJsonObject > &JsonObject, OutStructType *OutStruct, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.h:250
static bool JsonObjectStringToUStruct(const FString &JsonString, OutStructType *OutStruct, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.h:308
static JSONUTILITIES_API bool GetTextFromField(const FString &FieldName, const TSharedPtr< FJsonValue > &FieldValue, FText &TextOut)
Definition JsonObjectConverter.cpp:1235
TDelegate< TSharedPtr< FJsonValue >(FProperty *Property, const void *Value)> CustomExportCallback
Definition JsonObjectConverter.h:75
static JSONUTILITIES_API bool UStructToJsonAttributes(const UStruct *StructDefinition, const void *Struct, TMap< FString, TSharedPtr< FJsonValue > > &OutJsonAttributes, int64 CheckFlags=0, int64 SkipFlags=0, const CustomExportCallback *ExportCb=nullptr, EJsonObjectConversionFlags ConversionFlags=EJsonObjectConversionFlags::None)
Definition JsonObjectConverter.cpp:429
static JSONUTILITIES_API bool JsonValueToUProperty(const TSharedPtr< FJsonValue > &JsonValue, FProperty *Property, void *OutValue, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.cpp:1219
static JSONUTILITIES_API bool JsonObjectToUStruct(const TSharedRef< FJsonObject > &JsonObject, const UStruct *StructDefinition, void *OutStruct, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.cpp:1224
static JSONUTILITIES_API bool UStructToJsonObjectString(const UStruct *StructDefinition, const void *Struct, FString &OutJsonString, int64 CheckFlags=0, int64 SkipFlags=0, int32 Indent=0, const CustomExportCallback *ExportCb=nullptr, bool bPrettyPrint=true)
Definition JsonObjectConverter.cpp:450
static bool JsonArrayStringToUStruct(const FString &JsonString, TArray< OutStructType > *OutStructArray, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.h:347
static bool JsonArrayToUStruct(const TArray< TSharedPtr< FJsonValue > > &JsonArray, TArray< OutStructType > *OutStructArray, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.h:386
static JSONUTILITIES_API bool JsonAttributesToUStruct(const TMap< FString, TSharedPtr< FJsonValue > > &JsonAttributes, const UStruct *StructDefinition, void *OutStruct, int64 CheckFlags=0, int64 SkipFlags=0, const bool bStrictMode=false, FText *OutFailReason=nullptr, const CustomImportCallback *ImportCb=nullptr)
Definition JsonObjectConverter.cpp:1229
static bool UStructToFormattedJsonObjectString(const UStruct *StructDefinition, const void *Struct, FString &OutJsonString, int64 CheckFlags=0, int64 SkipFlags=0, int32 Indent=0, const CustomExportCallback *ExportCb=nullptr, EJsonObjectConversionFlags ConversionFlags=EJsonObjectConversionFlags::None)
Definition JsonObjectConverter.h:167
static JSONUTILITIES_API FString StandardizeCase(const FString &StringIn)
Definition JsonObjectConverter.cpp:24
static JSONUTILITIES_API const CustomExportCallback ExportCallback_WriteISO8601Dates
Definition JsonObjectConverter.h:84
Definition JsonObject.h:23
Definition UnrealType.h:174
static CORE_API FText FromString(const ANSICHAR *String)
Definition Text.cpp:1081
static CORE_API FText Format(FTextFormat Fmt, const FFormatNamedArguments &InArguments)
Definition Text.cpp:469
Definition DelegateSignatureImpl.inl:310
static TSharedRef< TJsonReader< TElementType_T< StringType > > > Create(StringType &&JsonString)
Definition JsonReader.h:1070
static bool Deserialize(const TSharedRef< TJsonReader< CharType > > &Reader, typename Policy::FValue &OutValue, EFlags InOptions=EFlags::None)
Definition JsonSerializer.h:283
static bool Serialize(const typename Policy::FValue &Value, const FString &Identifier, const TSharedRef< TJsonWriter< CharType, PrintPolicy > > &Writer, bool bCloseWriter=true)
Definition JsonSerializer.h:359
Definition JsonWriter.h:783
Definition UnrealString.h.inl:34
Definition SharedPointer.h:692
TSharedRef< ObjectType, Mode > ToSharedRef() const &
Definition SharedPointer.h:1028
UE_FORCEINLINE_HINT const bool IsValid() const
Definition SharedPointer.h:1085
Definition SharedPointer.h:153