From b6eb3c04e648d3b366d621b203e48539eba91b22 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Mon, 22 Feb 2010 19:21:56 +1300 Subject: [PATCH] stack-checker.dependencies: add depends-on-c-type --- .../stack-checker/dependencies/dependencies.factor | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/basis/stack-checker/dependencies/dependencies.factor b/basis/stack-checker/dependencies/dependencies.factor index ece943acac..1bd7cdcd31 100644 --- a/basis/stack-checker/dependencies/dependencies.factor +++ b/basis/stack-checker/dependencies/dependencies.factor @@ -1,8 +1,8 @@ ! Copyright (C) 2009, 2010 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. -USING: assocs accessors classes classes.algebra fry generic -kernel math namespaces sequences words sets -combinators.short-circuit classes.tuple ; +USING: arrays assocs accessors classes classes.algebra fry +generic kernel math namespaces sequences words sets +combinators.short-circuit classes.tuple alien.c-types ; FROM: classes.tuple.private => tuple-layout ; FROM: assocs => change-at ; IN: stack-checker.dependencies @@ -38,6 +38,13 @@ SYMBOLS: effect-dependency conditional-dependency definition-dependency ; : depends-on-definition ( word -- ) definition-dependency depends-on ; +GENERIC: depends-on-c-type ( c-type -- ) + +M: c-type-word depends-on-c-type depends-on-definition ; + +M: array depends-on-c-type + [ word? ] filter [ depends-on-definition ] each ; + ! Generic words that the current quotation depends on SYMBOL: generic-dependencies