Root Object

Many modern JSON like data markup languages allows root level object and arrays, i.e omitting top level braces. This can be done in DataConfig with custom serialize handlers.

// DataConfigExtra/Private/DataConfig/Extra/SerDe/DcSerDeRoot.cpp // root object FString Str = TEXT(R"( "Name" : "Foo", "Id" : 253, "Type" : "Beta" )"); // equivalent fixture FDcExtraSimpleStruct Expect; Expect.Name = TEXT("Foo"); Expect.Id = 253; Expect.Type = EDcExtraTestEnum1::Beta;
// DataConfigExtra/Private/DataConfig/Extra/SerDe/DcSerDeRoot.cpp // root list FString Str = TEXT(R"( "Alpha", "Beta", "Gamma" )"); // equivalent fixture TArray<EDcExtraTestEnum1> Expect = { EDcExtraTestEnum1::Alpha, EDcExtraTestEnum1::Beta, EDcExtraTestEnum1::Gamma};

This can be a tiny QOL improvement for manually authoring JSON data.