Если кому интересно - вот так: function* dict(context, name) { if (context.cursor) { var expression = dictionaries(name, context); var result = expression.next(); if (!result.done) { yield result.value; } } }