code: public int newUTF8(final String value) {
          key.set(UTF8, value, null, null);
          Item result = get(key);
          if (result == null) {
              pool.putByte(UTF8).putUTF8(value);
              result = new Item(index++, key);
              put(result);
          }
          return result.index;
      }
docs: Adds an UTF8 string to the constant pool of the class being build. Does
  nothing if the constant pool already contains a similar item. <i>This
  method is intended for {@link Attribute} sub classes, and is normally not
  needed by class generators or adapters.</i>
  
  @param value
  the String value.
  @return the index of a new or already existing UTF8 item.