@mic-rexjs/usecases
Version:
Usecases of Clean Architecture
22 lines (21 loc) • 735 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isGenerator = void 0;
var isGenerator = exports.isGenerator = function isGenerator(target, typeSymbol) {
var symbols = typeSymbol ? [typeSymbol] : [Symbol.iterator, Symbol.asyncIterator];
for (var _i = 0, _symbols = symbols; _i < _symbols.length; _i++) {
var key = _symbols[_i];
var iterator = target === null || target === void 0 ? void 0 : target[key];
if (typeof iterator !== 'function') {
continue;
}
var generator = iterator.call(target);
// 判断 `iterator` 返回的 `generator` 是否为自身,这是 `generator` 的特性
if (generator === target) {
return true;
}
}
return false;
};