在我的程序中,我使用了一种矩阵(作为向量的向量),如下所示:
[[:lt :lt :gt :eq]
[:eq :lt :gt :eq]
[:eq :eq :gt :gt]
[:un :eq :lt :lt]]
我有一个架构,声明为:
(def OrderMatrix [[(s/enum :lt :eq :gt :un)]]
我想做的是进一步限制模式,以确保我的矩阵是 clojure.lang.PersistentVector 的向量,甚至更好(如果可能的话),一种支持随机访问的结构。似乎在模式中使用 [ ] 仅测试序列,因此列表列表也将通过模式。
我如何用模式表达这个约束?