Fix predicate clobberage
parent
9e13e61a74
commit
47c91e379e
|
@ -340,6 +340,19 @@ TUPLE: electronic-device ;
|
||||||
[ f ] [ "laptop" get electronic-device? ] unit-test
|
[ f ] [ "laptop" get electronic-device? ] unit-test
|
||||||
[ t ] [ "laptop" get computer? ] unit-test
|
[ t ] [ "laptop" get computer? ] unit-test
|
||||||
|
|
||||||
|
! Redefinition problem
|
||||||
|
TUPLE: redefinition-problem ;
|
||||||
|
|
||||||
|
UNION: redefinition-problem' redefinition-problem integer ;
|
||||||
|
|
||||||
|
[ t ] [ 3 redefinition-problem'? ] unit-test
|
||||||
|
|
||||||
|
TUPLE: redefinition-problem-2 ;
|
||||||
|
|
||||||
|
"IN: classes.tuple.tests TUPLE: redefinition-problem < redefinition-problem-2 ;" eval
|
||||||
|
|
||||||
|
[ t ] [ 3 redefinition-problem'? ] unit-test
|
||||||
|
|
||||||
! Hardcore unit tests
|
! Hardcore unit tests
|
||||||
USE: threads
|
USE: threads
|
||||||
|
|
||||||
|
|
|
@ -140,12 +140,11 @@ PRIVATE>
|
||||||
[ drop f tuple-class define-class ]
|
[ drop f tuple-class define-class ]
|
||||||
[ nip define-tuple-slots ] [
|
[ nip define-tuple-slots ] [
|
||||||
2drop
|
2drop
|
||||||
class-usages [
|
class-usages keys [ tuple-class? ] subset [
|
||||||
drop
|
|
||||||
[ define-tuple-layout ]
|
[ define-tuple-layout ]
|
||||||
[ define-tuple-predicate ]
|
[ define-tuple-predicate ]
|
||||||
bi
|
bi
|
||||||
] assoc-each
|
] each
|
||||||
] 3tri ;
|
] 3tri ;
|
||||||
|
|
||||||
: redefine-tuple-class ( class superclass slots -- )
|
: redefine-tuple-class ( class superclass slots -- )
|
||||||
|
|
Loading…
Reference in New Issue