Add is.asyncIterable (#59)

This commit is contained in:
Artur Androsovych 2018-07-09 20:35:16 +03:00 committed by Sindre Sorhus
parent c84c2cbeca
commit c8736c2972
4 changed files with 20 additions and 1 deletions

View file

@ -136,6 +136,7 @@ namespace is { // tslint:disable-line:no-namespace
export const nullOrUndefined = (value: any): value is null | undefined => null_(value) || undefined(value);
export const object = (value: any): value is object => !nullOrUndefined(value) && (function_(value) || isObject(value));
export const iterable = (value: any): value is IterableIterator<any> => !nullOrUndefined(value) && function_(value[Symbol.iterator]);
export const asyncIterable = (value: any): value is AsyncIterableIterator<any> => !nullOrUndefined(value) && function_(value[Symbol.asyncIterator]);
export const generator = (value: any): value is Generator => iterable(value) && function_(value.next) && function_(value.throw);
export const nativePromise = (value: any): value is Promise<any> =>