diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-04-15 19:56:16 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-04-15 19:56:16 -0700 |
commit | 04da8ff8b0f3941f98123f821156ff445bfdb153 (patch) | |
tree | 2bd1ddfe2443ee75f3f7b55843d948ed7d6efe35 /shell/gap-buffer.mu | |
parent | 613b1d5734cf119494ef5921ec86bd6cf5e3e6ea (diff) | |
download | mu-04da8ff8b0f3941f98123f821156ff445bfdb153.tar.gz |
add some structure to the serialization format
Diffstat (limited to 'shell/gap-buffer.mu')
-rw-r--r-- | shell/gap-buffer.mu | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/shell/gap-buffer.mu b/shell/gap-buffer.mu index f4ddc7dd..030bf837 100644 --- a/shell/gap-buffer.mu +++ b/shell/gap-buffer.mu @@ -64,6 +64,14 @@ fn emit-gap-buffer _self: (addr gap-buffer), out: (addr stream byte) { emit-stack-from-top right, out } +fn append-gap-buffer _self: (addr gap-buffer), out: (addr stream byte) { + var self/esi: (addr gap-buffer) <- copy _self + var left/eax: (addr grapheme-stack) <- get self, left + emit-stack-from-bottom left, out + var right/eax: (addr grapheme-stack) <- get self, right + emit-stack-from-top right, out +} + # dump stack from bottom to top fn emit-stack-from-bottom _self: (addr grapheme-stack), out: (addr stream byte) { var self/esi: (addr grapheme-stack) <- copy _self |