public void encode(Encoder encoder) throws IOException {
		if (useMSConvention == DEFAULT_USE_MS_CONVENTION &&
			typeAlignmentEnabled == DEFAULT_TYPE_ALIGNMENT_ENABLED &&
			zeroLengthBoundary == DEFAULT_ZERO_LENGTH_BOUNDARY) {
			return;		// All defaults
		}
		encoder.openElement(ELEM_BITFIELD_PACKING);
		if (useMSConvention != DEFAULT_USE_MS_CONVENTION) {
			encoder.openElement(ELEM_USE_MS_CONVENTION);
			encoder.writeBool(ATTRIB_VALUE, true);
			encoder.closeElement(ELEM_USE_MS_CONVENTION);
		}
		if (typeAlignmentEnabled != DEFAULT_TYPE_ALIGNMENT_ENABLED) {
			encoder.openElement(ELEM_TYPE_ALIGNMENT_ENABLED);
			encoder.writeBool(ATTRIB_VALUE, false);
			encoder.closeElement(ELEM_TYPE_ALIGNMENT_ENABLED);
		}
		if (zeroLengthBoundary != DEFAULT_ZERO_LENGTH_BOUNDARY) {
			encoder.openElement(ELEM_ZERO_LENGTH_BOUNDARY);
			encoder.writeSignedInteger(ATTRIB_VALUE, zeroLengthBoundary);
			encoder.closeElement(ELEM_ZERO_LENGTH_BOUNDARY);
		}
		encoder.closeElement(ELEM_BITFIELD_PACKING);
	}
Output the details of this bitfield packing to a encoded document formatter.
@param encoder the output document encoder.
@throws IOException if an IO error occurs while encoding/writing output
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/BitFieldPackingImpl.java