Package org.checkerframework.javacutil
Interface DeepCopyable<T>
- 
- Type Parameters:
 T- the type of the subtype of DeepCopyable
@Deprecated public interface DeepCopyable<T>Deprecated.use org.plumelib.util.DeepCopyableAn interface for types that implement thedeepCopy()method. 
- 
- 
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description TdeepCopy()Deprecated.Returns a deep copy of this.static <T2 extends @Nullable DeepCopyable<T2>>
@PolyNull T2deepCopyOrNull(@PolyNull T2 object)Deprecated.Returns the deep copy of a non-null argument, ornullfor anullargument. 
 - 
 
- 
- 
Method Detail
- 
deepCopy
T deepCopy()
Deprecated.Returns a deep copy of this. A deep copy is equal to the original, but side effects to either object are not visible in the other. A deep copy may share immutable state with the original.The run-time class of the result is identical to the run-time class of this. The deep copy is equal to
this(perequals()if the object's class does not use reference equality asObject.equals()does).- Returns:
 - a deep copy of this
 
 
- 
deepCopyOrNull
static <T2 extends @Nullable DeepCopyable<T2>> @PolyNull T2 deepCopyOrNull(@PolyNull T2 object)
Deprecated.Returns the deep copy of a non-null argument, ornullfor anullargument.- Type Parameters:
 T2- the type of the object- Parameters:
 object- object to copy- Returns:
 - the deep copy of a non-null argument, or 
nullfor anullargument 
 
 - 
 
 -