function mapSuggestions(descriptor, sourceCode, messages) {
	if (!descriptor.suggest || !Array.isArray(descriptor.suggest)) {
		return [];
	}

	return (
		descriptor.suggest
			.map(suggestInfo => {
				const computedDesc =
					suggestInfo.desc || messages[suggestInfo.messageId];

				return {
					...suggestInfo,
					desc: interpolate(computedDesc, suggestInfo.data),
					fix: normalizeFixes(suggestInfo, sourceCode),
				};
			})

			// Remove suggestions that didn't provide a fix
			.filter(({ fix }) => fix)
	);
}
Gets an array of suggestion objects from the given descriptor.
@param {MessageDescriptor} descriptor The report descriptor.
@param {SourceCode} sourceCode The source code object to get text between fixes.
@param {Object} messages Object of meta messages for the rule.
@returns {Array<SuggestionResult>} The suggestions for the descriptor