Как проверить, является ли функция c ++ асинхронной, используя Libclang? - PullRequest
0 голосов
/ 13 марта 2020

Я занимаюсь синтаксическим анализом кодов c ++, используя Libclang. Я хочу проверить для каждой функции / метода, если это асинхронный. Например:

void returnN(std::function<void(int)> handler){
    auto t = std::thread([handler](){
        handler(10);
    });
    t.join();
}

Вышеуказанная функция является асинхронной, так как она не блокирует. Как я могу обнаружить то же самое, используя синтаксический анализ Libclang в python?

Я анализирую весь код при первом глубинном поиске, и всякий раз, когда я сталкиваюсь с курсором FUNCTION_DECL, я хочу иметь возможность печатать, если он асинхронный.

...