1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-12-27 03:18:08 +11:00
collapseos/blk/358

12 lines
503 B
Plaintext
Raw Normal View History

: _pd ( a -- n f, parse decimal )
C@+ OVER C@ 0 ( a len firstchar startat )
( if we have '-', we only advance. more processing later. )
SWAP '-' = IF 1+ THEN ( a len startat )
2020-10-29 11:29:28 +11:00
( if we can do the whole string, success. if _pdacc returns
false before, failure. )
0 ROT> ( len ) ( startat ) DO ( a r )
OVER I + C@ ( a r c ) _pdacc ( a r f )
2020-10-29 11:29:28 +11:00
NOT IF DROP 1- 0 UNLOOP EXIT THEN LOOP ( a r )
( if we had '-', we need to invert result. )
SWAP C@ '-' = IF 0 -^ THEN 1 ( r 1 ) ;