@Override
	public SettingsDefinition[] getSettingsDefinitions() {
		if (settingsDef == null) {
			DataType dt = getDataType();
			SettingsDefinition[] settingsDefinitions = dt.getSettingsDefinitions();
			TypeDefSettingsDefinition[] typeDefSettingsDefinitions =
				dt.getTypeDefSettingsDefinitions();
			settingsDef = new SettingsDefinition[settingsDefinitions.length +
				typeDefSettingsDefinitions.length];
			System.arraycopy(settingsDefinitions, 0, settingsDef, 0, settingsDefinitions.length);
			System.arraycopy(typeDefSettingsDefinitions, 0, settingsDef, settingsDefinitions.length,
				typeDefSettingsDefinitions.length);
		}
		return settingsDef;
	}
Construct a new typedef.
@param path category path for this datatype
@param name name of this typedef
@param dt data type that is being typedef'ed (may not be null)
@param universalID the id for the data type
@param sourceArchive the source archive for this data type
@param lastChangeTime the last time this data type was changed
@param lastChangeTimeInSourceArchive the last time this data type was changed in
its source archive.
@param dtm the data type manager associated with this data type. This can be null.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/TypedefDataType.java