parent
2a08e3906c
commit
3090a7ed2a
@ -44,8 +44,12 @@ public final class JsonArray extends JsonElement implements Iterable<JsonElement
|
||||
elements = new ArrayList<JsonElement>(capacity);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a deep copy of this element and all its children
|
||||
* @since 2.8.2
|
||||
*/
|
||||
@Override
|
||||
JsonArray deepCopy() {
|
||||
public JsonArray deepCopy() {
|
||||
if (!elements.isEmpty()) {
|
||||
JsonArray result = new JsonArray(elements.size());
|
||||
for (JsonElement element : elements) {
|
||||
|
@ -34,8 +34,9 @@ public abstract class JsonElement {
|
||||
/**
|
||||
* Returns a deep copy of this element. Immutable elements like primitives
|
||||
* and nulls are not copied.
|
||||
* @since 2.8.2
|
||||
*/
|
||||
abstract JsonElement deepCopy();
|
||||
public abstract JsonElement deepCopy();
|
||||
|
||||
/**
|
||||
* provides check for verifying if this element is an array or not.
|
||||
|
@ -40,8 +40,12 @@ public final class JsonNull extends JsonElement {
|
||||
// Do nothing
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the same instance since it is an immutable value
|
||||
* @since 2.8.2
|
||||
*/
|
||||
@Override
|
||||
JsonNull deepCopy() {
|
||||
public JsonNull deepCopy() {
|
||||
return INSTANCE;
|
||||
}
|
||||
|
||||
|
@ -33,8 +33,12 @@ public final class JsonObject extends JsonElement {
|
||||
private final LinkedTreeMap<String, JsonElement> members =
|
||||
new LinkedTreeMap<String, JsonElement>();
|
||||
|
||||
/**
|
||||
* Creates a deep copy of this element and all its children
|
||||
* @since 2.8.2
|
||||
*/
|
||||
@Override
|
||||
JsonObject deepCopy() {
|
||||
public JsonObject deepCopy() {
|
||||
JsonObject result = new JsonObject();
|
||||
for (Map.Entry<String, JsonElement> entry : members.entrySet()) {
|
||||
result.add(entry.getKey(), entry.getValue().deepCopy());
|
||||
|
@ -85,8 +85,12 @@ public final class JsonPrimitive extends JsonElement {
|
||||
setValue(primitive);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the same value as primitives are immutable.
|
||||
* @since 2.8.2
|
||||
*/
|
||||
@Override
|
||||
JsonPrimitive deepCopy() {
|
||||
public JsonPrimitive deepCopy() {
|
||||
return this;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user