- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在clojure的ARef
实现中,共有三种方法
void setValidator(IFn vf);
IFn getValidator();
void validate(IFn vf, Object val)
这些方法有什么用?
最佳答案
验证器函数是一个单参数函数,将在 ARef (var/ref/agent/atom) 的新值发布之前调用。如果函数返回 false 或抛出异常,ARef 的值将不会更改。
getter 对应于核心函数 get-validator
,setter 对应于 set-validator!
。 validate
由 clojure 代码调用,因此您不需要调用它。
有关示例,请参阅 the clojure docs
关于clojure - ARef 中的 validate 方法的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12850650/
我正在尝试创建带有菜单的网页,每个菜单项都是单独的 html 页面。单击菜单项时,它们会在单独的页面(隐藏菜单)中打开,这是不希望的,因为用户应该能够单击其他菜单,它们应该在同一页面中打开,并且菜单项
在clojure的ARef实现中,共有三种方法 void setValidator(IFn vf); IFn getValidator(); void validate(IFn vf, Object
在 Lisp 中,我定义了一个数组 a,然后让 b 等于 a。我现在想重新定义 b 的条目,使其等于 a 中的另一个条目,如下所示: (setf a (make-array '(2 2) :initi
我现在已经了解了数组和 aref在口齿不清。到目前为止,它很容易掌握,而且效果很好: (defparameter *foo* (make-array 5)) (aref *foo* 0) ; => n
我不明白为什么 setf 不能处理从函数调用返回的数组引用。在下面的示例中,为什么最终调用会失败? (setf arr #1a(a b c)) (defun ret-aref (a i) (a
我有一个维度为 '(3 3 2) 的数组,名称为 test-array: #3A(((0 0) (0 0.1) (0 0.3)) ((1 0) (1 0.1) (1 0.3)) ((2
我试图在 CLISP 中打印数组的值,我在下面写了函数: (setq x (make-array '5 :initial-contents '(a b c d e))) (loop for i fro
我是一名优秀的程序员,十分优秀!