Я создаю простой Alloy для создания простых объектов Java Pojo, и некоторые поля этого pojo являются логическими значениями. Теперь я использую следующий механизм для достижения этой функции
one sig item {
autoPay: String,
Price: Int
}
fact boolean {
all n: item {
item.autoPay = "true" or
item.autoPay = "false"
}
}
Это будет работать, но каждый раз, когда я добавляю новое логическое поле, мне приходится изменять логический факт, чтобы убедиться, что значение равно «истине» или «ложи». Есть ли лучшая практика для этого? Как то, что Alloy делает для целых чисел?