Coverage Summary for Class: ObjectExtKt (ru.eda.plgn.bizgen.plugin)

Class Class, % Method, % Branch, % Line, % Instruction, %
ObjectExtKt 100% (1/1) 100% (1/1) 100% (2/2) 100% (16/16)


 package ru.eda.plgn.bizgen.plugin
 
 import com.google.gson.Gson
 
 /**
  * Метод клонирование объекта через Json.
  *
  * Обеспечивает глубокое клонирование.
  *
  * @param T тип клонируемого объекта
  * @return копия исходного объекта с новыми ссылками
  */
 fun <T : Any> T.deepCopyByJson(): T {
   val sourceJson = Gson().toJson(this)
   return Gson().fromJson(sourceJson, this::class.java)
 }