#constraint-programming #minizinc
Вопрос:
Я бы хотел сделать что-то подобное:
enum COLORS = {"green", "red", "blue"};
output [show(type(COLORS)];
И я бы ожидал, что это приведет к результату enum
. Кажется, я не могу узнать из документов, как это сделать.
Ответ №1:
В настоящее время MiniZinc не включает никаких операций отражения, которые позволят вам получить имя типа.
Ваш пример на самом деле может быть не очень хорошим, потому что enum
в данном случае ключевое слово семантически создает новый тип COLORS
. Так что моя интуиция относительно того , что type
вернет функция, была бы COLORS
иной enum
.
Если вы считаете, что это может быть полезной функцией (и, возможно, у вас есть более подробный пример, где это используется), вы можете отправить проблему в службу отслеживания проблем MiniZinc: https://github.com/MiniZinc/libminizinc/issues