public function walkVariableDefinition(LVariableDefinition $variableDefinition) { return $this->codeWriter->writeVariableDefinition($this->walkVariable($variable = $variableDefinition->getVariable()), $variableDefinition->hasValue() ? $this->walkValue($variableDefinition->getInitializer(), $variable->getType()->unwrap()) : $this->walkExpression($variableDefinition->getInitializer(), 'variableDefinition')); }