Tôi đang xây dựng một cây biểu hiện bằng cách sử dụng các công đoàn phân biệt đối xử. Mã bên dưới:Các công đoàn có thể phân biệt đối xử có liên quan đến nhau không?
type IntExpression =
| TrueIsOne of BoolExpression
type BoolExpression =
| LessThan of IntExpression * IntExpression
| And of BoolExpression * BoolExpression
| Or of BoolExpression * BoolExpression
| Bool of bool
ném lỗi vì BoolExpression không được xác định. Trao đổi các định nghĩa chỉ là kết quả ngược lại (IntExpression không được định nghĩa) như bạn mong đợi.
Có cách nào khác không?
thể trùng lặp của [F # tờ khai chuyển tiếp loại] (http://stackoverflow.com/questions/1378575/f-forward-type-declarations) – Brian
@ Brian Đây là cùng một câu hỏi, nhưng thuật ngữ khác đủ để tôi không tìm thấy nó với Google hoặc tìm kiếm trang web. Điều đó một mình có thể là một lý do để để cả hai mở. – mavnn