package com.google.gson; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public final class JsonArray extends JsonElement implements Iterable<JsonElement> { private final List<JsonElement> elements; public JsonArray() { this.elements = new ArrayList(); } public void add(JsonElement element) { if (element == null) { element = JsonNull.INSTANCE; } this.elements.add(element); } public Iterator<JsonElement> iterator() { return this.elements.iterator(); } public Number getAsNumber() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsNumber(); } throw new IllegalStateException(); } public String getAsString() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsString(); } throw new IllegalStateException(); } public double getAsDouble() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsDouble(); } throw new IllegalStateException(); } public long getAsLong() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsLong(); } throw new IllegalStateException(); } public int getAsInt() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsInt(); } throw new IllegalStateException(); } public boolean getAsBoolean() { if (this.elements.size() == 1) { return ((JsonElement)this.elements.get(0)).getAsBoolean(); } throw new IllegalStateException(); } public boolean equals(Object o) { return (o == this) || (((o instanceof JsonArray)) && (((JsonArray)o).elements.equals(this.elements))); } public int hashCode() { return this.elements.hashCode(); } }