Whether variables means anything: false while idle, and the only way to tell a real null from none when TVariables is nullable.
null
TVariables
final bool hasVariables;