Skip to content

Commit 3ba3658

Browse files
committed
Add type annotations to assist static analysis
1 parent b25224e commit 3ba3658

File tree

3 files changed

+9
-7
lines changed

3 files changed

+9
-7
lines changed

src/Operation/Find.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -428,10 +428,10 @@ private function createQueryOptions(): array
428428
}
429429
}
430430

431-
$modifiers = empty($this->options['modifiers']) ? [] : document_to_array($this->options['modifiers']);
432-
433-
if (! empty($modifiers)) {
434-
$options['modifiers'] = $modifiers;
431+
if (! empty($this->options['modifiers'])) {
432+
/** @var array|object */
433+
$modifiers = $this->options['modifiers'];
434+
$options['modifiers'] = is_object($modifiers) ? document_to_array($modifiers) : $modifiers;
435435
}
436436

437437
return $options;

src/Operation/FindAndModify.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -293,9 +293,9 @@ private function createCommandDocument(): array
293293
}
294294

295295
if (isset($this->options['update'])) {
296-
$cmd['update'] = is_pipeline($this->options['update'])
297-
? $this->options['update']
298-
: (object) $this->options['update'];
296+
/** @var array|object */
297+
$update = $this->options['update'];
298+
$cmd['update'] = is_pipeline($update) ? $update : (object) $update;
299299
}
300300

301301
foreach (['arrayFilters', 'bypassDocumentValidation', 'comment', 'hint', 'maxTimeMS'] as $option) {

src/functions.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ function document_to_array($document): array
115115
/* Nested documents and arrays are intentionally left as BSON. We avoid
116116
* iterator_to_array() since Document and PackedArray iteration returns
117117
* all values as MongoDB\BSON\Value instances. */
118+
/** @var array */
118119
return $document->toPHP([
119120
'array' => 'bson',
120121
'document' => 'bson',
@@ -248,6 +249,7 @@ function is_pipeline($pipeline): bool
248249
/* Nested documents and arrays are intentionally left as BSON. We avoid
249250
* iterator_to_array() since Document iteration returns all values as
250251
* MongoDB\BSON\Value instances. */
252+
/** @var array */
251253
$pipeline = $pipeline->toPHP([
252254
'array' => 'bson',
253255
'document' => 'bson',

0 commit comments

Comments
 (0)