labashki/std/string/array/swap.lb

22 lines
224 B
Plaintext

@ 0 ; Get both arguments
args 0
size
#exec std/string/array/rev.lb
args 1
dup
; |str_size str_size...>
@ 1
kjz 2
#expr -
args 1
#exec std/rot.lb
#exec std/rot.lb
jmp 1
@ 2
pop
#exec std/string/array/rev.lb