@Override
	public DataType toDataType() {
		Structure struct = new StructureDataType(new CategoryPath(PATH), header.getName(), 0);
		struct.add(DWORD, "Reserved", "Always 0");
		struct.add(BYTE, "MajorVersion", null);
		struct.add(BYTE, "MinorVersion", null);
		struct.add(BYTE, "HeapSizes", "Bit vector for heap sizes");
		struct.add(BYTE, "Reserved", "Always 1");
		struct.add(QWORD, "Valid", "Bit vector of present tables");
		struct.add(QWORD, "Sorted", "Bit vector of sorted tables");
		struct.add(new ArrayDataType(DWORD, Long.bitCount(valid), DWORD.getLength()), "Rows",
			"# of rows for each corresponding present table");
		for (CliAbstractTable table : tables) {
			struct.add(table.toDataType(), table.toString(),
				"CLI Metadata Table: " + table.toString());
		}
		return struct;
	}
Gets the data type of the index into a metadata table.  Will be either
{@link DWordDataType} or {@link WordDataType}.

@return The data type of the index into the string stream.
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/pe/cli/streams/CliStreamMetadata.java