From 94eae21b86b8da5a4e397ddbf4ce42c6fe637b21 Mon Sep 17 00:00:00 2001 From: Benedikt Franke Date: Wed, 1 Jul 2020 18:32:28 +0200 Subject: [PATCH] Replace function calls with type casts The effect is the same, efficiency is better. --- src/Type/Definition/FloatType.php | 8 ++++++-- src/Type/Definition/IntType.php | 8 +++++--- src/Utils/AST.php | 4 ++-- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/Type/Definition/FloatType.php b/src/Type/Definition/FloatType.php index 7d4c8d764..869eb5136 100644 --- a/src/Type/Definition/FloatType.php +++ b/src/Type/Definition/FloatType.php @@ -35,7 +35,9 @@ class FloatType extends ScalarType */ public function serialize($value) : float { - $float = is_numeric($value) || is_bool($value) ? floatval($value) : null; + $float = is_numeric($value) || is_bool($value) + ? (float) $value + : null; if ($float === null || ! is_finite($float)) { throw new Error( @@ -54,7 +56,9 @@ public function serialize($value) : float */ public function parseValue($value) : float { - $float = is_float($value) || is_int($value) ? floatval($value) : null; + $float = is_float($value) || is_int($value) + ? (float) $value + : null; if ($float === null || ! is_finite($float)) { throw new Error( diff --git a/src/Type/Definition/IntType.php b/src/Type/Definition/IntType.php index 0b3c5e699..612bdcb97 100644 --- a/src/Type/Definition/IntType.php +++ b/src/Type/Definition/IntType.php @@ -49,7 +49,9 @@ public function serialize($value) return $value; } - $float = is_numeric($value) || is_bool($value) ? floatval($value) : null; + $float = is_numeric($value) || is_bool($value) + ? (float) $value + : null; if ($float === null || floor($float) !== $float) { throw new Error( @@ -65,7 +67,7 @@ public function serialize($value) ); } - return intval($float); + return (int) $float; } /** @@ -91,7 +93,7 @@ public function parseValue($value) : int ); } - return intval($value); + return (int) $value; } /** diff --git a/src/Utils/AST.php b/src/Utils/AST.php index 3cdcd8faf..d4cf6a98a 100644 --- a/src/Utils/AST.php +++ b/src/Utils/AST.php @@ -513,9 +513,9 @@ public static function valueFromASTUntyped($valueNode, ?array $variables = null) case $valueNode instanceof NullValueNode: return null; case $valueNode instanceof IntValueNode: - return intval($valueNode->value, 10); + return (int) $valueNode->value; case $valueNode instanceof FloatValueNode: - return floatval($valueNode->value); + return (float) $valueNode->value; case $valueNode instanceof StringValueNode: case $valueNode instanceof EnumValueNode: case $valueNode instanceof BooleanValueNode: