Có những hàng nhập khẩu:Bắt nhiều kết quả từ bản đồ với "ống kính"
> import Control.Lens
Control.Lens> import qualified Data.Map as Map
và một giá trị bản đồ được xác định như sau:
Control.Lens Map> let m = Map.fromList [('a', 1), ('c', 3), ('b', 2)]
tôi có thể nhận được đó là yếu tố từng người một như vậy:
Control.Lens Map> view (at 'b') m
Just 2
Điều tôi muốn biết là, có một bộ khóa như sau:
Control.Lens Map> import qualified Data.Set as Set
Control.Lens Map Set> let keys = Set.fromList ['d', 'c', 'b']
làm thế nào để xây dựng như một getter (tôi đoán), sử dụng mà tôi sẽ có thể để có được một bộ (hoặc một danh sách) của phù hợp với các yếu tố:
Control.Lens Map Set> view (**???**) m
[3, 2]
ý rằng kết quả chứa chỉ có 2 phần tử, bởi vì không có kết quả phù hợp cho khóa 'd'
.
Chấp nhận câu trả lời này. Nó tốt hơn tôi nhiều. –
Tuyệt vời! Tôi cảm thấy nó phải đơn giản. Cảm ơn bạn! –