Selector!( Condition!(Leaf!bool), Action!(Leaf!Ternary, process) ) sel; Functor v; v = 10; auto res = sel(v, 30, 40); assert(v == 80); assert(res == Ternary.yes); v = 10; res = sel(v, 20); assert(v == 500); assert(res == Ternary.unknown); v = 10; res = sel(v, 10); assert(v == 30); assert(res == Ternary.no);
The selector node. Tries to tick all of its children until one delivers an answer inequal to false.