Skip to content
  • Nikolai Kosjar's avatar
    CodeAssist: Support asynchronous processing without threads · e661a9c1
    Nikolai Kosjar authored
    
    
    This is required for the CodemodelBackendIPC integration in the
    ClangCodeModelPlugin. Since the heavy calculation happens in a separate
    process, we only need to send appropriate requests and receive results
    for a working completion. However, the CodeAssist API does not fit here
    since it only provides means of caculating the results in the main
    thread or a worker thread. We can't use the worker thread approach since
    that would lead to threading issues regarding QLocalSocket in
    CodemodelBackendIPC.
    
    IAssistProcessor::setAsyncProposalAvailable() will hand the results
    back to CodeAssist in order to display them.
    
    Change-Id: I496192560fb406ec40fa8bcb7904f7a03d2eef50
    Reviewed-by: default avatarDavid Schulz <david.schulz@theqtcompany.com>
    e661a9c1