code: final void put(
          final ClassWriter cw,
          final byte[] code,
          final int len,
          final int maxStack,
          final int maxLocals,
          final ByteVector out)
      {
          Attribute attr = this;
          while (attr != null) {
              ByteVector b = attr.write(cw, code, len, maxStack, maxLocals);
              out.putShort(cw.newUTF8(attr.type)).putInt(b.length);
              out.putByteArray(b.data, 0, b.length);
              attr = attr.next;
          }
      }
docs: Writes all the attributes of this attribute list in the given byte
  vector.
  
  @param cw the class writer to be used to convert the attributes into byte
  arrays, with the {@link #write write} method.
  @param code the bytecode of the method corresponding to these code
  attributes, or <tt>null</tt> if these attributes are not code
  attributes.
  @param len the length of the bytecode of the method corresponding to
  these code attributes, or <tt>null</tt> if these attributes are
  not code attributes.
  @param maxStack the maximum stack size of the method corresponding to
  these code attributes, or -1 if these attributes are not code
  attributes.
  @param maxLocals the maximum number of local variables of the method
  corresponding to these code attributes, or -1 if these attributes
  are not code attributes.
  @param out where the attributes must be written.