mirror of
https://github.com/rjNemo/federation
synced 2026-06-07 10:46:40 +00:00
18 lines
627 B
Text
18 lines
627 B
Text
// @flow strict
|
|
import { SYMBOL_ASYNC_ITERATOR } from '../polyfills/symbols';
|
|
|
|
/**
|
|
* Returns true if the provided object implements the AsyncIterator protocol via
|
|
* either implementing a `Symbol.asyncIterator` or `"@@asyncIterator"` method.
|
|
*/
|
|
declare function isAsyncIterable(value: mixed): boolean %checks(value instanceof
|
|
AsyncIterable);
|
|
|
|
// eslint-disable-next-line no-redeclare
|
|
export default function isAsyncIterable(maybeAsyncIterable) {
|
|
if (maybeAsyncIterable == null || typeof maybeAsyncIterable !== 'object') {
|
|
return false;
|
|
}
|
|
|
|
return typeof maybeAsyncIterable[SYMBOL_ASYNC_ITERATOR] === 'function';
|
|
}
|