aboutsummaryrefslogtreecommitdiff
path: root/guile
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2021-02-20 22:10:43 +0100
committerThomas White <taw@physics.org>2021-02-20 22:10:43 +0100
commit6510ace33a71536a9ba4eb5d3ac3286bf401c8d4 (patch)
tree65cdeb630383bd72f160f2ec4406461c301009aa /guile
parent5afa40627f247ce10433092c5bd6b989510a5f61 (diff)
Add state-source
Diffstat (limited to 'guile')
-rw-r--r--guile/starlet/base.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/guile/starlet/base.scm b/guile/starlet/base.scm
index cbe4d66..dc25491 100644
--- a/guile/starlet/base.scm
+++ b/guile/starlet/base.scm
@@ -38,6 +38,7 @@
add-state-to-state!
clear-state!
print-state
+ state-source
set-attr!
state-find
merge-states-htp
@@ -596,3 +597,13 @@
(define (print-state a)
(print-hash-table (get-state-hash-table a)))
+
+
+(define (state-source a)
+ (cons 'begin
+ (state-map (lambda (fix attr val)
+ (list 'at
+ (get-fixture-name fix)
+ (list 'quote (get-attr-name attr))
+ val))
+ a)))