我想生成具有不同节点类型的树。对于每个节点类型,都有可能成为该节点子节点的节点类型的不同可能组合。任何节点类型都可能没有子节点。
recursive-gen
从本质上迫使我从里到外构建树,从一个叶生成器开始,该生成器生成一个没有子节点的任何类型的节点。从子生成器创建生成器的函数本质上必须生成所需的父节点类型并such-that
在子生成器上使用,直到它生成所需的子节点类型。这通常会导致运行时错误,说such-that
在 10 次尝试后失败。
由于无法从父生成器参数化子生成器,有哪些替代选项?