From faf556f971c05d2ee46822f5d4d1870243bc5b54 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Tue, 18 Oct 2011 16:29:38 -0700 Subject: [PATCH] delegate: verify generics on protocol definition. Fixes #260. --- basis/delegate/delegate.factor | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/basis/delegate/delegate.factor b/basis/delegate/delegate.factor index 1b0b9e3a35..24b4de8497 100644 --- a/basis/delegate/delegate.factor +++ b/basis/delegate/delegate.factor @@ -155,9 +155,15 @@ M: consultation forget* : show-words ( wordlist' -- wordlist ) [ dup second zero? [ first ] when ] map ; +ERROR: not-a-generic word ; + +: check-generic ( generic -- ) + dup generic? [ drop ] [ not-a-generic ] if ; + PRIVATE> : define-protocol ( protocol wordlist -- ) + dup [ check-generic ] each [ drop define-symbol ] [ fill-in-depth [ forget-old-definitions ] -- 2.34.1