diff options
author | Thomas White <taw@physics.org> | 2023-04-01 22:59:24 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2023-04-01 22:59:24 +0200 |
commit | 69337c0e3eed3cb1f93ff18d07058ef82a5bd159 (patch) | |
tree | 0fef3b8dde7a8b13624573db4b217a7fcc16e812 /guile/starlet/engine.scm | |
parent | 5bed6ccfaa22fb5f1217c66b270ce53bc21dbbf8 (diff) |
Scanout: Retrieve the combined state only once
Diffstat (limited to 'guile/starlet/engine.scm')
-rw-r--r-- | guile/starlet/engine.scm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/guile/starlet/engine.scm b/guile/starlet/engine.scm index 37656cb..6c43cf1 100644 --- a/guile/starlet/engine.scm +++ b/guile/starlet/engine.scm @@ -35,6 +35,7 @@ total-num-attrs register-state! current-value + current-value-state patched-fixture-names patched-fixtures)) @@ -56,6 +57,10 @@ (map get-fixture-name (atomic-box-ref fixtures))) +(define (current-value-state) + (atomic-box-ref current-values)) + + (define (patched-fixtures) (atomic-box-ref fixtures)) @@ -122,7 +127,7 @@ (define-method (current-value (fix <fixture>) (attr-name <starlet-attribute>)) - (let ((v (state-find fix attr-name (atomic-box-ref current-values)))) + (let ((v (state-find fix attr-name (current-value-state)))) (if (eq? v 'no-value) (get-attr-home-val fix attr-name) v))) |