using SptCommon.Annotations; namespace Core.Utils.Cloners; [Injectable] public class JsonCloner : ICloner { protected JsonUtil _jsonUtil; public JsonCloner(JsonUtil jsonUtil) { _jsonUtil = jsonUtil; } public T? Clone(T? obj) { return _jsonUtil.Deserialize(_jsonUtil.Serialize(obj)); } }