| /** | 
|  * Export generator function checks. | 
|  */ | 
| module.exports = isGenerator | 
| module.exports.fn = isGeneratorFunction | 
|   | 
| /** | 
|  * Check whether an object is a generator. | 
|  * | 
|  * @param  {Object}  obj | 
|  * @return {Boolean} | 
|  */ | 
| function isGenerator (obj) { | 
|   return obj && | 
|     typeof obj.next === 'function' && | 
|     typeof obj.throw === 'function' | 
| } | 
|   | 
| /** | 
|  * Check whether a function is generator. | 
|  * | 
|  * @param  {Function} fn | 
|  * @return {Boolean} | 
|  */ | 
| function isGeneratorFunction (fn) { | 
|   return typeof fn === 'function' && | 
|     fn.constructor && | 
|     fn.constructor.name === 'GeneratorFunction' | 
| } |