Skip to content

Commit 6a7982e

Browse files
gen_stub: move findEquivalentFuncInfo() into FuncInfo
Reduce the number of global functions by moving it to instance method `FuncInfo::findEquivalent()`.
1 parent 365a7e9 commit 6a7982e

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

build/gen_stub.php

+11-11
Original file line numberDiff line numberDiff line change
@@ -2088,6 +2088,16 @@ public function getMethodSynopsisElement(array $funcMap, array $aliasMap, DOMDoc
20882088
return $methodSynopsis;
20892089
}
20902090

2091+
/** @param FuncInfo[] $generatedFuncInfos */
2092+
public function findEquivalent(array $generatedFuncInfos): ?FuncInfo {
2093+
foreach ($generatedFuncInfos as $generatedFuncInfo) {
2094+
if ($generatedFuncInfo->equalsApartFromNameAndRefcount($this)) {
2095+
return $generatedFuncInfo;
2096+
}
2097+
}
2098+
return null;
2099+
}
2100+
20912101
public function __clone()
20922102
{
20932103
foreach ($this->args as $key => $argInfo) {
@@ -5052,16 +5062,6 @@ function funcInfoToCode(FileInfo $fileInfo, FuncInfo $funcInfo): string {
50525062
return $code . "\n";
50535063
}
50545064

5055-
/** @param FuncInfo[] $generatedFuncInfos */
5056-
function findEquivalentFuncInfo(array $generatedFuncInfos, FuncInfo $funcInfo): ?FuncInfo {
5057-
foreach ($generatedFuncInfos as $generatedFuncInfo) {
5058-
if ($generatedFuncInfo->equalsApartFromNameAndRefcount($funcInfo)) {
5059-
return $generatedFuncInfo;
5060-
}
5061-
}
5062-
return null;
5063-
}
5064-
50655065
/**
50665066
* @template T
50675067
* @param iterable<T> $infos
@@ -5135,7 +5135,7 @@ function generateArgInfoCode(
51355135
$fileInfo->getAllFuncInfos(), "\n",
51365136
static function (FuncInfo $funcInfo) use (&$generatedFuncInfos, $fileInfo) {
51375137
/* If there already is an equivalent arginfo structure, only emit a #define */
5138-
if ($generatedFuncInfo = findEquivalentFuncInfo($generatedFuncInfos, $funcInfo)) {
5138+
if ($generatedFuncInfo = $funcInfo->findEquivalent($generatedFuncInfos)) {
51395139
$code = sprintf(
51405140
"#define %s %s\n",
51415141
$funcInfo->getArgInfoName(), $generatedFuncInfo->getArgInfoName()

0 commit comments

Comments
 (0)