これらのインポートを持つ:
> import Control.Lens
Control.Lens> import qualified Data.Map as Map
および次のように定義されたマップ値:
Control.Lens Map> let m = Map.fromList [('a', 1), ('c', 3), ('b', 2)]
次のように要素を 1 つずつ取得できます。
Control.Lens Map> view (at 'b') m
Just 2
私が知りたいのは、次のようなキーのセットを持っていることです:
Control.Lens Map> import qualified Data.Set as Set
Control.Lens Map Set> let keys = Set.fromList ['d', 'c', 'b']
一致する要素のセット (またはリスト) を取得できるように、そのようなゲッターを構築する方法 (私は推測します):
Control.Lens Map Set> view (**???**) m
[3, 2]
key に一致するものがないため、結果には 2 つの要素しか含まれていないことに注意してください'd'
。