public void encodeCompositePlaceholder(Encoder encoder, DataType type)
			throws IOException {
		String metaString;
		if (type instanceof Structure) {
			metaString = "struct";
		}
		else if (type instanceof Union) {
			metaString = "union";
		}
		else {
			return; //empty.  Could throw AssertException.
		}
		encoder.openElement(ELEM_TYPE);
		encoder.writeString(ATTRIB_NAME, type.getDisplayName());
		encoder.writeUnsignedInteger(ATTRIB_ID, progDataTypes.getID(type));
		encoder.writeString(ATTRIB_METATYPE, metaString);
		encoder.writeSignedInteger(ATTRIB_SIZE, type.getLength());
		encoder.writeSignedInteger(ATTRIB_ALIGNMENT, type.getAlignment());
		encoder.writeBool(ATTRIB_INCOMPLETE, true);
		encoder.closeElement(ELEM_TYPE);
	}
Encode a Structure/Union to the stream without listing its fields
@param encoder is the stream encoder
@param type data type to encode
@throws IOException for errors in the underlying stream
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/pcode/PcodeDataTypeManager.java