package cn.citycraft.GsonAgent.api;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Iterator;

/**
 * JsonArray代理API
 *
 * @since 2016年1月5日 下午1:13:27
 * @author 喵♂呜
 */
public abstract interface JsonArray extends JsonElement, Iterable<JsonElement> {
	public void add(JsonElement element);

	public void addAll(JsonArray array);

	@Override
	public JsonArray deepCopy();

	@Override
	public boolean equals(Object o);

	public JsonElement get(int i);

	@Override
	public BigDecimal getAsBigDecimal();

	@Override
	public BigInteger getAsBigInteger();

	@Override
	public boolean getAsBoolean();

	@Override
	public byte getAsByte();

	@Override
	public char getAsCharacter();

	@Override
	public double getAsDouble();

	@Override
	public float getAsFloat();

	@Override
	public int getAsInt();

	@Override
	public long getAsLong();

	@Override
	public Number getAsNumber();

	@Override
	public short getAsShort();

	@Override
	public String getAsString();

	@Override
	public int hashCode();

	@Override
	public Iterator<JsonElement> iterator();

	public int size();
}
