目前,select-keys在HMap上返回一个具有联合键和值的Map。
=> (t/cf {:foo 1, :bar "2", :baz \3})
[(HMap :mandatory {:baz (Value \3), :bar (Value "2"), :foo (Value 1)} :complete? true) {:then tt, :else ff}]
=> (t/cf (select-keys {:foo 1, :bar "2", :baz \3}
[:foo :bar]))
(t/Map (U (Value :baz) (Value :foo) (Value :bar)) (U (Value 1) (Value \3) (Value "2")))
这在使用select-keys从HMap中移除额外键时会导致类型错误。
预期行为:select-keys应返回一个HMap,其中包含其输入HMap的必选键的子集。