Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2017, 23:33
Новичок на форуме
Отправить личное сообщение для zzareyan Посмотреть профиль Найти все сообщения от zzareyan
 
Регистрация: 12.12.2016
Сообщений: 4

Функции в генераторах
У меня есть функция-генератор, в котором хочу поставить другую функцию.
Скажем, функция dictionaries - поиск в словаре слова в контексте. Когда использую стандартный (одноразовый) yield, все работает (код в комментарии), а с функцией dictionaries никак.

Может, кто знает как пройти эту ситуацию?
function* dict(name, context) {
    if (context.cursor) {
        yield* dictionaries(name, context);
 
        /*yield {
            name: name + "(" + то что должен вернуть dictionaries + ")",
            text: context.cursor.text,
            index: context.cursor.index,
            count: 1,
            start: context.cursor.start
        };*/
    }
}
Ответить с цитированием
  #2 (permalink)  
Старый 17.01.2017, 19:42
Новичок на форуме
Отправить личное сообщение для zzareyan Посмотреть профиль Найти все сообщения от zzareyan
 
Регистрация: 12.12.2016
Сообщений: 4

Фу нашел наконец:

Если кому интересно - вот так:

function* dict(context, name) {
    if (context.cursor) {
        var expression = dictionaries(name, context);
        var result = expression.next();
        if (!result.done) {
            yield result.value;
        }
    }
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов функции страницы из расширения chrome nontxt Events/DOM/Window 0 09.02.2015 10:42
Изменение прототипа функции tsigel Общие вопросы Javascript 11 15.05.2014 01:03
Добавление функции внутрь другой функции Lion_astana jQuery 9 28.12.2013 14:33
Установить имя конструктора Андрей Параничев Общие вопросы Javascript 8 17.11.2011 10:09
arguments вызвавшей функции mister_maxim Общие вопросы Javascript 4 12.10.2010 16:21