Fix class resetting
parent
a27fa29098
commit
93d9722a6b
|
@ -7,7 +7,7 @@ IN: classes.mixin
|
||||||
PREDICATE: mixin-class < union-class "mixin" word-prop ;
|
PREDICATE: mixin-class < union-class "mixin" word-prop ;
|
||||||
|
|
||||||
M: mixin-class reset-class
|
M: mixin-class reset-class
|
||||||
{ "metaclass" "members" "mixin" } reset-props ;
|
{ "class" "metaclass" "members" "mixin" } reset-props ;
|
||||||
|
|
||||||
: redefine-mixin-class ( class members -- )
|
: redefine-mixin-class ( class members -- )
|
||||||
dupd define-union-class
|
dupd define-union-class
|
||||||
|
|
|
@ -25,5 +25,8 @@ PREDICATE: predicate-class < class
|
||||||
|
|
||||||
M: predicate-class reset-class
|
M: predicate-class reset-class
|
||||||
{
|
{
|
||||||
"metaclass" "predicate-definition" "superclass"
|
"class"
|
||||||
|
"metaclass"
|
||||||
|
"predicate-definition"
|
||||||
|
"superclass"
|
||||||
} reset-props ;
|
} reset-props ;
|
||||||
|
|
|
@ -212,6 +212,7 @@ M: tuple-class reset-class
|
||||||
] with each
|
] with each
|
||||||
] [
|
] [
|
||||||
{
|
{
|
||||||
|
"class"
|
||||||
"metaclass"
|
"metaclass"
|
||||||
"superclass"
|
"superclass"
|
||||||
"layout"
|
"layout"
|
||||||
|
|
|
@ -29,4 +29,4 @@ M: union-class update-class define-union-predicate ;
|
||||||
2bi ;
|
2bi ;
|
||||||
|
|
||||||
M: union-class reset-class
|
M: union-class reset-class
|
||||||
{ "metaclass" "members" } reset-props ;
|
{ "class" "metaclass" "members" } reset-props ;
|
||||||
|
|
|
@ -505,8 +505,10 @@ SYMBOL: interactive-vocabs
|
||||||
: fix-class-words ( -- )
|
: fix-class-words ( -- )
|
||||||
#! If a class word had a compound definition which was
|
#! If a class word had a compound definition which was
|
||||||
#! removed, it must go back to being a symbol.
|
#! removed, it must go back to being a symbol.
|
||||||
new-definitions get first2 diff
|
new-definitions get first2
|
||||||
[ nip dup reset-generic define-symbol ] assoc-each ;
|
[ diff values [ [ reset-generic ] [ define-symbol ] bi ] each ]
|
||||||
|
[ swap diff values [ class? ] subset [ reset-class ] each ]
|
||||||
|
2bi ;
|
||||||
|
|
||||||
: forget-smudged ( -- )
|
: forget-smudged ( -- )
|
||||||
smudged-usage forget-all
|
smudged-usage forget-all
|
||||||
|
@ -515,9 +517,10 @@ SYMBOL: interactive-vocabs
|
||||||
|
|
||||||
: finish-parsing ( lines quot -- )
|
: finish-parsing ( lines quot -- )
|
||||||
file get
|
file get
|
||||||
[ record-form ] keep
|
[ record-form ]
|
||||||
[ record-definitions ] keep
|
[ record-definitions ]
|
||||||
record-checksum ;
|
[ record-checksum ]
|
||||||
|
tri ;
|
||||||
|
|
||||||
: parse-stream ( stream name -- quot )
|
: parse-stream ( stream name -- quot )
|
||||||
[
|
[
|
||||||
|
|
Loading…
Reference in New Issue