Exemplo n.º 1
0
    /**
     * Writes the <code>EncodedField</code> to the given <code>AnnotatedOutput</code> object
     *
     * @param out the <code>AnnotatedOutput</code> object to write to
     * @param previousEncodedField The previous <code>EncodedField</code> in the list containing
     *     this <code>EncodedField</code>.
     */
    private void writeTo(AnnotatedOutput out, EncodedField previousEncodedField) {
      int previousIndex = previousEncodedField == null ? 0 : previousEncodedField.field.getIndex();

      if (out.annotates()) {
        out.annotate("field: " + field.getFieldString());
        out.writeUnsignedLeb128(field.getIndex() - previousIndex);
        out.annotate("access_flags: " + AccessFlags.formatAccessFlagsForField(accessFlags));
        out.writeUnsignedLeb128(accessFlags);
      } else {
        out.writeUnsignedLeb128(field.getIndex() - previousIndex);
        out.writeUnsignedLeb128(accessFlags);
      }
    }