1*5f757f3fSDimitry Andric //===----- CodeCompletion.h - Code Completion for ClangRepl ---===// 2*5f757f3fSDimitry Andric // 3*5f757f3fSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*5f757f3fSDimitry Andric // See https://llvm.org/LICENSE.txt for license information. 5*5f757f3fSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*5f757f3fSDimitry Andric // 7*5f757f3fSDimitry Andric //===----------------------------------------------------------------------===// 8*5f757f3fSDimitry Andric // 9*5f757f3fSDimitry Andric // This file defines the classes which performs code completion at the REPL. 10*5f757f3fSDimitry Andric // 11*5f757f3fSDimitry Andric //===----------------------------------------------------------------------===// 12*5f757f3fSDimitry Andric 13*5f757f3fSDimitry Andric #ifndef LLVM_CLANG_INTERPRETER_CODE_COMPLETION_H 14*5f757f3fSDimitry Andric #define LLVM_CLANG_INTERPRETER_CODE_COMPLETION_H 15*5f757f3fSDimitry Andric #include <string> 16*5f757f3fSDimitry Andric #include <vector> 17*5f757f3fSDimitry Andric 18*5f757f3fSDimitry Andric namespace llvm { 19*5f757f3fSDimitry Andric class StringRef; 20*5f757f3fSDimitry Andric } // namespace llvm 21*5f757f3fSDimitry Andric 22*5f757f3fSDimitry Andric namespace clang { 23*5f757f3fSDimitry Andric class CodeCompletionResult; 24*5f757f3fSDimitry Andric class CompilerInstance; 25*5f757f3fSDimitry Andric 26*5f757f3fSDimitry Andric void codeComplete(CompilerInstance *InterpCI, llvm::StringRef Content, 27*5f757f3fSDimitry Andric unsigned Line, unsigned Col, const CompilerInstance *ParentCI, 28*5f757f3fSDimitry Andric std::vector<std::string> &CCResults); 29*5f757f3fSDimitry Andric } // namespace clang 30*5f757f3fSDimitry Andric #endif 31