protected function getMetadata(O\Expression $expression)
{
if (!isset($this->metadata[$expression])) {
throw new TypeException('Cannot get metadata for expression of type \'%s\': the expression has no associated metadata', $expression->getType());
}
return $this->metadata[$expression];
}