fixed fold-model

db4
Sam Anklesaria 2009-05-30 12:13:13 -05:00
parent 588a04c62d
commit 3adff7ebe9
1 changed files with 3 additions and 3 deletions

View File

@ -18,11 +18,11 @@ M: filter-model (model-changed) [ value>> ] dip 2dup quot>> call( a -- ? )
[ set-model ] [ 2drop ] if ; [ set-model ] [ 2drop ] if ;
: <filter> ( model quot -- filter-signal ) [ 1array filter-model <multi-model> ] dip >>quot ; : <filter> ( model quot -- filter-signal ) [ 1array filter-model <multi-model> ] dip >>quot ;
TUPLE: fold-model < multi-model oldval quot ; TUPLE: fold-model < multi-model quot ;
M: fold-model (model-changed) [ [ value>> ] [ [ oldval>> ] [ quot>> ] bi ] bi* M: fold-model (model-changed) [ [ value>> ] [ [ value>> ] [ quot>> ] bi ] bi*
call( val oldval -- newval ) ] keep set-model ; call( val oldval -- newval ) ] keep set-model ;
: <fold> ( model oldval quot -- signal ) rot 1array fold-model <multi-model> swap >>quot : <fold> ( model oldval quot -- signal ) rot 1array fold-model <multi-model> swap >>quot
swap [ >>oldval ] [ >>value ] bi ; swap >>value ;
TUPLE: updater-model < multi-model values updates ; TUPLE: updater-model < multi-model values updates ;
M: updater-model (model-changed) tuck updates>> = M: updater-model (model-changed) tuck updates>> =