Action

The action node. Executes T with provided arguments, reports the result. If the result is neither true or false, proc is executed with the instance of T and arguments provided.

struct Action (
T
alias proc
) {}

Members

Functions

opCall
auto opCall(U args)

the (...) serves as the tick method of the node

Variables

member
T member;
Undocumented in source.

Examples

Functor v; 
Action!(Leaf!Ternary, process) a; 
assert(v == 0); 
auto res = a(v); 
assert(v == 0); 
assert(res == Ternary.no); 
v = 5; 
res = a(v, 5); 
assert(v == 10); 
assert(res == Ternary.no); 
res = a(v, 20, 20, 20); 
assert(v == 70); 
assert(res == Ternary.yes);

v = 10; 
res = a(v, 40);
assert(v == 500);
assert(res == Ternary.unknown);

Meta