如何将年字段限制为 1-4?
How to constrain a year field to 1-4?
有一组大学生:
sig Student {}
每个学生都有一个属性,表示 he/she 大学是哪一年(第一年、第二年等):
sig Student {
year: Int
}
year 的值必须是 1、2、3 或 4。这是一种限制 year 字段的方法:
sig Student {
year: Int
} {
year in {i: Int | i=1 or i=2 or i=3 or i=4}
}
是否有更好(更简单、更直观)的方式来限制年份?
-- Enumerate
let YEARS = 1+2+3+4
-- or Range
let YEARS = { y : Int | y >= 1 and y <= 4 }
sig Student { year: Int } {
year in YEARS
}
或者更简洁
sig Student { year: YEARS }
有一组大学生:
sig Student {}
每个学生都有一个属性,表示 he/she 大学是哪一年(第一年、第二年等):
sig Student {
year: Int
}
year 的值必须是 1、2、3 或 4。这是一种限制 year 字段的方法:
sig Student {
year: Int
} {
year in {i: Int | i=1 or i=2 or i=3 or i=4}
}
是否有更好(更简单、更直观)的方式来限制年份?
-- Enumerate
let YEARS = 1+2+3+4
-- or Range
let YEARS = { y : Int | y >= 1 and y <= 4 }
sig Student { year: Int } {
year in YEARS
}
或者更简洁
sig Student { year: YEARS }