package us.myles.ViaVersion.api.type.types; import io.netty.buffer.ByteBuf; import us.myles.ViaVersion.api.type.Type; import us.myles.ViaVersion.api.type.TypeConverter; public class DoubleType extends Type implements TypeConverter { public DoubleType() { super(Double.class); } /** * @deprecated use {@link #readPrimitive(ByteBuf)} for manual reading to avoid wrapping */ @Override @Deprecated public Double read(ByteBuf buffer) { return buffer.readDouble(); } public double readPrimitive(ByteBuf buffer) { return buffer.readDouble(); } /** * @deprecated use {@link #writePrimitive(ByteBuf, double)} for manual reading to avoid wrapping */ @Override @Deprecated public void write(ByteBuf buffer, Double object) { buffer.writeDouble(object); } public void writePrimitive(ByteBuf buffer, double object) { buffer.writeDouble(object); } @Override public Double from(Object o) { if (o instanceof Number) { return ((Number) o).doubleValue(); } if (o instanceof Boolean) { return (Boolean) o ? (byte) 1D : 0D; } return (Double) o; } }