ifbrack.fr (76116) | ifbrack.fr (94290) |
---|---|
1\ ** ficl/softwords/ifbrack.fr 2\ ** ANS conditional compile directives [if] [else] [then] 3\ ** Requires ficl 2.0 or greater... | 1\ ** ficl/softwords/ifbrack.fr 2\ ** ANS conditional compile directives [if] [else] [then] 3\ ** Requires ficl 2.0 or greater... |
4\ 5\ $FreeBSD: head/sys/boot/ficl/softwords/ifbrack.fr 94290 2002-04-09 17:45:28Z dcs $ |
|
4 | 6 |
5\ $FreeBSD: head/sys/boot/ficl/softwords/ifbrack.fr 76116 2001-04-29 02:36:36Z dcs $ 6 | |
7hide 8 9: ?[if] ( c-addr u -- c-addr u flag ) | 7hide 8 9: ?[if] ( c-addr u -- c-addr u flag ) |
10 2dup 2dup 11 s" [if]" compare 0= >r 12 s" [IF]" compare 0= r> 13 or | 10 2dup s" [if]" compare-insensitive 0= |
14; 15 16: ?[else] ( c-addr u -- c-addr u flag ) | 11; 12 13: ?[else] ( c-addr u -- c-addr u flag ) |
17 2dup 2dup 18 s" [else]" compare 0= >r 19 s" [ELSE]" compare 0= r> 20 or | 14 2dup s" [else]" compare-insensitive 0= |
21; 22 23: ?[then] ( c-addr u -- c-addr u flag ) | 15; 16 17: ?[then] ( c-addr u -- c-addr u flag ) |
24 2dup 2dup 25 s" [then]" compare 0= >r 26 s" [THEN]" compare 0= r> | 18 2dup s" [then]" compare-insensitive 0= >r 19 2dup s" [endif]" compare-insensitive 0= r> |
27 or 28; 29 30set-current 31 32: [else] ( -- ) 33 1 \ ( level ) 34 begin --- 12 unchanged lines hidden (view full) --- 47 refill 0= until \ level 48 drop 49; immediate 50 51: [if] ( flag -- ) 520= if postpone [else] then ; immediate 53 54: [then] ( -- ) ; immediate | 20 or 21; 22 23set-current 24 25: [else] ( -- ) 26 1 \ ( level ) 27 begin --- 12 unchanged lines hidden (view full) --- 40 refill 0= until \ level 41 drop 42; immediate 43 44: [if] ( flag -- ) 450= if postpone [else] then ; immediate 46 47: [then] ( -- ) ; immediate |
48: [endif] ( -- ) ; immediate |
|
55 56previous | 49 50previous |