~mdw
/
lisp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dep.lisp (%dep-value): Document why this is a separate function.
[lisp]
/
dep.lisp
diff --git
a/dep.lisp
b/dep.lisp
index
c437538
..
ecd1628
100644
(file)
--- a/
dep.lisp
+++ b/
dep.lisp
@@
-228,11
+228,13
@@
(progn (setf (dep-flags dep) flags) nil))))))
(defun %dep-value (dep)
(progn (setf (dep-flags dep) flags) nil))))))
(defun %dep-value (dep)
- "Do the difficult work of retrieving the current value of a DEP."
+ "Do the difficult work of retrieving the current value of a DEP.
+
+ This is the unhappy path of `dep-value'."
+ (force-dep-value dep)
(when *evaluating-dep*
(pushnew (dep-weak-pointer *evaluating-dep*) (dep-dependents dep))
(when *evaluating-dep*
(pushnew (dep-weak-pointer *evaluating-dep*) (dep-dependents dep))
- (pushnew dep (dep-dependencies *evaluating-dep*)))
- (force-dep-value dep))
+ (pushnew dep (dep-dependencies *evaluating-dep*))))
(export 'dep-value)
(declaim (inline dep-value))
(export 'dep-value)
(declaim (inline dep-value))