public void writeType(@Nonnull TypeKey value) throws IOException {
   writer.writeEncodedUint(ValueType.TYPE, typeSection.getItemIndex(value));
 }
 public void writeString(@Nonnull StringKey value) throws IOException {
   writer.writeEncodedUint(ValueType.STRING, stringSection.getItemIndex(value));
 }
 public void writeField(@Nonnull FieldRefKey value) throws IOException {
   writer.writeEncodedUint(ValueType.FIELD, fieldSection.getItemIndex(value));
 }
 public void writeMethod(@Nonnull MethodRefKey value) throws IOException {
   writer.writeEncodedUint(ValueType.METHOD, methodSection.getItemIndex(value));
 }
 public void writeChar(char value) throws IOException {
   writer.writeEncodedUint(ValueType.CHAR, value);
 }