Skip to content

Commit 1fea12b

Browse files
committed
Replace class_uses_recursive with method_exists
1 parent fd2b081 commit 1fea12b

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/Scout/ScoutEngine.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
use function is_iterable;
4242
use function is_string;
4343
use function iterator_to_array;
44+
use function method_exists;
4445
use function sleep;
4546
use function sprintf;
4647
use function substr;
@@ -255,6 +256,7 @@ protected function performSearch(Builder $builder, ?int $offset = null): array
255256
],
256257
[
257258
'$addFields' => [
259+
// Metadata field with the total count of documents
258260
'__count' => '$$SEARCH_META.count.lowerBound',
259261
],
260262
],
@@ -467,7 +469,7 @@ private function getSearchableCollection(Model|EloquentCollection $model): Mongo
467469
$model = $model->first();
468470
}
469471

470-
assert(in_array(Searchable::class, class_uses_recursive($model)), sprintf('Model "%s" must use "%s" trait', $model::class, Searchable::class));
472+
assert(method_exists($model, 'searchableAs'), sprintf('Model "%s" must use "%s" trait', $model::class, Searchable::class));
471473

472474
return $this->database->selectCollection($model->searchableAs());
473475
}
@@ -480,7 +482,7 @@ private function getIndexableCollection(Model|EloquentCollection $model): MongoD
480482
}
481483

482484
assert($model instanceof Model);
483-
assert(in_array(Searchable::class, class_uses_recursive($model)), sprintf('Model "%s" must use "%s" trait', $model::class, Searchable::class));
485+
assert(method_exists($model, 'indexableAs'), sprintf('Model "%s" must use "%s" trait', $model::class, Searchable::class));
484486

485487
if (
486488
$model->getConnection() instanceof Connection

0 commit comments

Comments
 (0)