diff --git a/basis/tools/deploy/shaker/next-methods.factor b/basis/tools/deploy/shaker/next-methods.factor index 2bff407525..4e771d24fd 100644 --- a/basis/tools/deploy/shaker/next-methods.factor +++ b/basis/tools/deploy/shaker/next-methods.factor @@ -1,4 +1,5 @@ -USING: words ; +USING: kernel words ; IN: generic -: next-method-quot ( method -- quot ) "next-method-quot" word-prop ; +: (call-next-method) ( method -- ) + dup "next-method" word-prop execute ; diff --git a/basis/tools/deploy/shaker/shaker.factor b/basis/tools/deploy/shaker/shaker.factor index a0eb9b5c7f..c6b6731321 100755 --- a/basis/tools/deploy/shaker/shaker.factor +++ b/basis/tools/deploy/shaker/shaker.factor @@ -443,17 +443,15 @@ SYMBOL: deploy-vocab t "quiet" set-global f output-stream set-global ; -: unsafe-next-method-quot ( method -- quot ) +: next-method* ( method -- quot ) [ "method-class" word-prop ] [ "method-generic" word-prop ] bi - next-method 1quotation ; + next-method ; : compute-next-methods ( -- ) [ standard-generic? ] instances [ "methods" word-prop [ - nip dup - unsafe-next-method-quot - "next-method-quot" set-word-prop + nip dup next-method* "next-method" set-word-prop ] assoc-each ] each "vocab:tools/deploy/shaker/next-methods.factor" run-file ;