diff --git a/test/gsc_test_ntree.erl b/test/gsc_test_ntree.erl index 5e7f678..94cf9a9 100644 --- a/test/gsc_test_ntree.erl +++ b/test/gsc_test_ntree.erl @@ -70,6 +70,7 @@ f2f_op(OpStr, Fst) -> % never saw the op f2f_op(_opstr, Stk, []) -> lists:reverse(Stk); + % see op f2f_op(OpStr, LhsStk, [#tk{str = OpStr} = OpTk | Rest]) -> Lhf = lists:reverse(LhsStk), diff --git a/test/gsc_test_ytree.erl b/test/gsc_test_ytree.erl new file mode 100644 index 0000000..6cbbe52 --- /dev/null +++ b/test/gsc_test_ytree.erl @@ -0,0 +1,27 @@ +-module(gsc_test_ytree). + +-include("$gsc_include/gsc.hrl"). + +-export([main/0]). + + +% @doc ys = syntax stem +-record(ys, + {tks :: [tk()], + sig :: [tk()], + mta :: any(), + fst :: list(any())}). + +% syntax tree +-type yt(StemT, LeafT) :: LeafT + | #ys{mta :: StemT, + fst :: [yt(StemT, LeafT)]}. + +% syntax forest +-type yf(StemT, LeafT) :: [yt(StemT, LeafT)]. + + +main() -> + Src = "type foo = bar", + io:format("~ts~n", [Src]). +