class FieldReaderInt8Field<T>
        extends FieldReaderObjectField<T> {
    FieldReaderInt8Field(String fieldName, Class fieldType, int ordinal, long features, String format, Byte defaultValue, JSONSchema schema, Field field) {
        super(fieldName, fieldType, fieldType, ordinal, features, format, null, defaultValue, schema, field);
    }

    @Override
    public void readFieldValue(JSONReader jsonReader, T object) {<FILL_FUNCTION_BODY>}

    @Override
    public void accept(T object, short value) {
        accept(object, Byte.valueOf((byte) value));
    }

    @Override
    public void accept(T object, float value) {
        accept(object, Byte.valueOf((byte) value));
    }

    @Override
    public void accept(T object, double value) {
        accept(object, Byte.valueOf((byte) value));
    }

    @Override
    public void accept(T object, int value) {
        accept(object, Byte.valueOf((byte) value));
    }

    @Override
    public void accept(T object, long value) {
        accept(object, Byte.valueOf((byte) value));
    }

    @Override
    public void accept(T object, Object value) {
        Byte byteValue = TypeUtils.toByte(value);
        if (schema != null) {
            schema.assertValidate(byteValue);
        }

        try {
            field.set(object, byteValue);
        } catch (Exception e) {
            throw new JSONException("set " + fieldName + " error", e);
        }
    }

    @Override
    public Object readFieldValue(JSONReader jsonReader) {
        return (byte) jsonReader.readInt32Value();
    }
}

        Integer fieldInt = jsonReader.readInt32();

        if (schema != null) {
            schema.assertValidate(fieldInt);
        }

        try {
            field.set(object, fieldInt == null ? null : fieldInt.byteValue());
        } catch (Exception e) {
            throw new JSONException(jsonReader.info("set " + fieldName + " error"), e);
        }
    
<methods>public void accept(T, boolean) ,public void accept(T, byte) ,public void accept(T, short) ,public void accept(T, int) ,public void accept(T, long) ,public void accept(T, float) ,public void accept(T, double) ,public void accept(T, char) ,public void accept(T, java.lang.Object) <variables>