public function visitCall(Node $node) : Context
{
// Look only at nodes of the form `assert(expr, ...)`.
if (!isset($node->children['expr']) || !isset($node->children['expr']->children['name']) || $node->children['expr']->children['name'] !== 'assert' || !isset($node->children['args']) || !isset($node->children['args']->children[0]) || !$node->children['args']->children[0] instanceof Node) {
return $this->context;
}
// Look to see if the asserted expression says anything about
// the types of any variables.
return (new ConditionVisitor($this->code_base, $this->context))($node->children['args']->children[0]);
}