gen_stub: convert parseFramelessFunctionInfo() to a constructor

Also mark `FramelessFunctionInfo::$arity` readonly
This commit is contained in:
Daniel Scherzer 2025-02-04 11:02:31 -08:00 committed by Máté Kocsis
parent 9da6050e08
commit 4af64fdbfa

View file

@ -4238,15 +4238,14 @@ function parseDocComment(DocComment $comment): array {
} }
class FramelessFunctionInfo { class FramelessFunctionInfo {
public int $arity; public /* readonly */ int $arity;
}
function parseFramelessFunctionInfo(string $json): FramelessFunctionInfo { public function __construct(string $json) {
// FIXME: Should have some validation // FIXME: Should have some validation
$json = json_decode($json, true); $json = json_decode($json, true);
$framelessFunctionInfo = new FramelessFunctionInfo();
$framelessFunctionInfo->arity = $json["arity"]; $this->arity = $json["arity"];
return $framelessFunctionInfo; }
} }
function parseFunctionLike( function parseFunctionLike(
@ -4330,7 +4329,7 @@ function parseFunctionLike(
break; break;
case 'frameless-function': case 'frameless-function':
$framelessFunctionInfos[] = parseFramelessFunctionInfo($tag->getValue()); $framelessFunctionInfos[] = new FramelessFunctionInfo($tag->getValue());
break; break;
} }
} }