classes: finish converting update-map to use hash-sets.
parent
f84df9d190
commit
af29a16aeb
|
@ -3,7 +3,6 @@
|
||||||
USING: accessors assocs combinators definitions kernel
|
USING: accessors assocs combinators definitions kernel
|
||||||
make namespaces quotations sequences sets words words.symbol ;
|
make namespaces quotations sequences sets words words.symbol ;
|
||||||
FROM: namespaces => set ;
|
FROM: namespaces => set ;
|
||||||
FROM: graphs => add-vertex remove-vertex ;
|
|
||||||
QUALIFIED: sets
|
QUALIFIED: sets
|
||||||
IN: classes
|
IN: classes
|
||||||
|
|
||||||
|
@ -131,7 +130,8 @@ GENERIC: implementors ( class/classes -- seq )
|
||||||
tri
|
tri
|
||||||
] { } make ;
|
] { } make ;
|
||||||
|
|
||||||
: class-usage ( class -- seq ) update-map get at keys ;
|
: class-usage ( class -- seq )
|
||||||
|
update-map get at sets:members ;
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
|
@ -155,10 +155,12 @@ M: sequence implementors [ implementors ] gather ;
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
: update-map+ ( class -- )
|
: update-map+ ( class -- )
|
||||||
dup class-uses update-map get add-vertex ;
|
dup class-uses update-map get
|
||||||
|
[ adjoin-at ] curry with each ;
|
||||||
|
|
||||||
: update-map- ( class -- )
|
: update-map- ( class -- )
|
||||||
dup class-uses update-map get remove-vertex ;
|
dup class-uses update-map get
|
||||||
|
[ at delete ] curry with each ;
|
||||||
|
|
||||||
: implementors-map+ ( class -- )
|
: implementors-map+ ( class -- )
|
||||||
[ HS{ } clone ] dip implementors-map get set-at ;
|
[ HS{ } clone ] dip implementors-map get set-at ;
|
||||||
|
|
Loading…
Reference in New Issue