factor/basis/compiler/tree/def-use/simplified/simplified-tests.factor

24 lines
787 B
Factor

USING: kernel tools.test compiler.tree compiler.tree.builder
compiler.tree.recursive compiler.tree.def-use
compiler.tree.def-use.simplified accessors sequences sorting classes ;
IN: compiler.tree.def-use.simplified
[ { #call #return } ] [
[ 1 dup reverse ] build-tree compute-def-use
first out-d>> first actually-used-by
[ node>> class ] map natural-sort
] unit-test
: word-1 ( a -- b ) dup [ word-1 ] when ; inline recursive
[ { #introduce } ] [
[ word-1 ] build-tree analyze-recursive compute-def-use
last in-d>> first actually-defined-by
[ node>> class ] map natural-sort
] unit-test
[ { #if #return } ] [
[ word-1 ] build-tree analyze-recursive compute-def-use
first out-d>> first actually-used-by
[ node>> class ] map natural-sort
] unit-test