> */ public function getNodeTypes() : array { return [FuncCall::class]; } /** * @param FuncCall $node */ public function refactor(Node $node) : ?Node { $methodName = $this->getName($node); if ($methodName === null) { return null; } if (!\in_array($methodName, self::VAL_FUNCTION_NAMES, \true)) { return null; } if ($node->isFirstClassCallable()) { return null; } $firstArg = $node->getArgs()[0]; $double = new Double($firstArg->value); $double->setAttribute(AttributeKey::KIND, Double::KIND_FLOAT); return $double; } }