The OpenD Programming Language

Dependencies

Fetchs a set of variables the expression is depends on. First, it checks if the expression has DependsOn UDA ; otherwise, iterates over members with Derivative UDA and collects variable names.

@fmamath
template Dependencies (
T
) {
@fmamath
static if(isPointer!T)
enum Dependencies;
@fmamath
static if(!(isPointer!T))
static if(hasUDA!(T, DependsOn))
enum DependsOn Dependencies;
@fmamath
static if(!(isPointer!T))
static if(!(hasUDA!(T, DependsOn)))
enum DependsOn Dependencies;
}

Meta