]> gitweb.factorcode.org Git - factor.git/commitdiff
stack-checker.dependencies: add depends-on-c-type
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 22 Feb 2010 06:21:56 +0000 (19:21 +1300)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 22 Feb 2010 06:25:09 +0000 (19:25 +1300)
basis/stack-checker/dependencies/dependencies.factor

index ece943acacdd73a9f357235ef7db8a0bc28bcb46..1bd7cdcd311e266e628446b1524dbbd436887d0e 100644 (file)
@@ -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