summary refs log tree commit diff
path: root/log-load.e
diff options
context:
space:
mode:
authorIrene Knapp <ireneista@irenes.space>2026-05-21 00:23:32 -0700
committerIrene Knapp <ireneista@irenes.space>2026-05-21 00:23:32 -0700
commit189f0c0de22150f944e067b686b4cfe81af5fcb8 (patch)
treee77213734e4260b3e9a33016d85ddcb233bd7912 /log-load.e
parentd784695204db078a8f1731f93d12117f6e53c317 (diff)
okay, s" and ." work all-the-way in the log-load transform now
wow those were hard ones. it's very squirelly what happens when.  hopefully these new and reorganized docs will make it easier to understand next time...

Force-Push: yes
Change-Id: I8f3b86900ca1794afc3e607c2180dd05ea168cc7
Diffstat (limited to 'log-load.e')
-rw-r--r--log-load.e18
1 files changed, 18 insertions, 0 deletions
diff --git a/log-load.e b/log-load.e
index e496e04..4649403 100644
--- a/log-load.e
+++ b/log-load.e
@@ -355,3 +355,21 @@
   ~ (log address, output point, here)
   ! ;
 
+
+~   This is a helper used by log-load-string-alternate. It does the usual
+~ string packing thing, but at one layer of indirection more than usual. Its
+~ responsibility includes alignment, unlike packstring.
+~
+~ (log address, string pointer -- log address)
+: log-load-comma-string
+  swap log-load-here @ 3roll
+  ~ (log address, output point, string pointer)
+
+  packstring
+  8 packalign
+  ~ (log address, output point)
+
+  swap log-load-here 3roll swap
+  ~ (log address, output point, here)
+  ! ;
+