factor/basis/models/arrow/arrow.factor

19 lines
498 B
Factor
Raw Normal View History

! Copyright (C) 2008, 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
2014-11-30 02:00:24 -05:00
USING: accessors kernel models sequences ;
IN: models.arrow
2008-07-04 18:58:37 -04:00
TUPLE: arrow < model quot ;
2008-07-04 18:58:37 -04:00
: <arrow> ( model quot -- arrow )
f arrow new-model
swap >>quot
2014-11-30 02:00:24 -05:00
[ add-dependency ] keep ;
2008-07-04 18:58:37 -04:00
M: arrow model-changed
2014-11-30 02:00:24 -05:00
[ [ value>> ] [ quot>> ] bi* call( old -- new ) ]
[ set-model ] bi ;
2008-07-04 18:58:37 -04:00
2010-11-14 18:30:32 -05:00
M: arrow model-activated
[ dependencies>> ] keep [ model-changed ] curry each ;