想象一下这个受歧视的联盟:
type Direction =
| North
| South
| East
| West
Run Code Online (Sandbox Code Playgroud)
现在假设我想要一种只接受(北,南)或(东,西)元组的类型.也许这将描述仅从北向南或从东向西的火车路线.(北,东)和(南,西)应该是禁止的,也许是因为火车不像那样运行.
这不起作用:
type TrainLines =
| North, South
| East, West
Run Code Online (Sandbox Code Playgroud)
即使这不起作用,也许你可以看到我正在尝试做什么.
这有效,但不仅限于(北,南)和(东,西)的可能性:
type TrainLines = Direction * Direction
Run Code Online (Sandbox Code Playgroud)
任何指导都会受到欢迎.
Bri*_*ian 10
这不是你要求的,但我认为这可能是
type TrainLines =
| NorthSouth
| EastWest
Run Code Online (Sandbox Code Playgroud)
你会好的吗?如果需要,你可以添加例如
with member this.Directions =
match this with
| NorthSouth -> [North; South]
| EastWest -> [East; West]
Run Code Online (Sandbox Code Playgroud)