Merge remote-tracking branch 'upstream/master'
commit
696faa17a5
|
@ -32,20 +32,20 @@ DEFER: if
|
||||||
: if ( ..a ? true: ( ..a -- ..b ) false: ( ..a -- ..b ) -- ..b ) ? call ;
|
: if ( ..a ? true: ( ..a -- ..b ) false: ( ..a -- ..b ) -- ..b ) ? call ;
|
||||||
|
|
||||||
! Single branch
|
! Single branch
|
||||||
: unless ( ? false -- )
|
: unless ( ..a ? false: ( ..a -- ..a ) -- ..a )
|
||||||
swap [ drop ] [ call ] if ; inline
|
swap [ drop ] [ call ] if ; inline
|
||||||
|
|
||||||
: when ( ? true -- )
|
: when ( ..a ? true: ( ..a -- ..a ) -- ..a )
|
||||||
swap [ call ] [ drop ] if ; inline
|
swap [ call ] [ drop ] if ; inline
|
||||||
|
|
||||||
! Anaphoric
|
! Anaphoric
|
||||||
: if* ( ..a ? true: ( ..a ? -- ..b ) false: ( ..a -- ..b ) -- ..b )
|
: if* ( ..a ? true: ( ..a ? -- ..b ) false: ( ..a -- ..b ) -- ..b )
|
||||||
pick [ drop call ] [ 2nip call ] if ; inline
|
pick [ drop call ] [ 2nip call ] if ; inline
|
||||||
|
|
||||||
: when* ( ? true -- )
|
: when* ( ..a ? true: ( ..a ? -- ..a ) -- ..a )
|
||||||
over [ call ] [ 2drop ] if ; inline
|
over [ call ] [ 2drop ] if ; inline
|
||||||
|
|
||||||
: unless* ( ? false -- )
|
: unless* ( ..a ? false: ( ..a -- ..a x ) -- ..a x )
|
||||||
over [ drop ] [ nip call ] if ; inline
|
over [ drop ] [ nip call ] if ; inline
|
||||||
|
|
||||||
! Default
|
! Default
|
||||||
|
|
Loading…
Reference in New Issue