diff options
Diffstat (limited to 'qemu/roms/openbios/forth/lib/split.fs')
-rw-r--r-- | qemu/roms/openbios/forth/lib/split.fs | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/qemu/roms/openbios/forth/lib/split.fs b/qemu/roms/openbios/forth/lib/split.fs deleted file mode 100644 index 1a7ac3a0a..000000000 --- a/qemu/roms/openbios/forth/lib/split.fs +++ /dev/null @@ -1,49 +0,0 @@ -\ implements split-before, split-after and left-split -\ as described in 4.3 (Path resolution) - -\ delimeter returned in R-string -: split-before ( addr len delim -- addr-R len-R addr-L len-L ) - 0 rot dup >r 0 ?do - ( str char cnt R: len <sys> ) - 2 pick over + c@ 2 pick = if leave then - 1+ - loop - nip - 2dup + r> 2 pick - - 2swap -; - -\ delimeter returned in L-string -: split-after ( addr len delim -- addr-R len-R addr-L len-L ) - over 1- rot dup >r 0 ?do - ( str char cnt R: len <sys> ) - 2 pick over + c@ 2 pick = if leave then - 1- - loop - nip - dup 0 >= if 1+ else drop r@ then - 2dup + r> 2 pick - - 2swap -; - -\ delimiter not returned -: left-split ( addr len delim -- addr-R len-R addr-L len-L ) - 0 rot dup >r 0 ?do - ( str char cnt R: len <sys> ) - 2 pick i + c@ 2 pick = if leave then - 1+ - loop - nip - 2dup + 1+ r> 2 pick - - dup if 1- then - 2swap -; - -\ delimiter not returned [THIS FUNCTION IS NOT NEEDED] -: right-split ( addr len delim -- addr-R len-R addr-L len-L ) - dup >r - split-after - dup if 2dup + 1- - c@ r@ = if 1- then then - r> drop -; |