clang-tools 19.0.0git
Classes | Namespaces | Functions | Variables
TUScheduler.cpp File Reference
#include "TUScheduler.h"
#include "CompileCommands.h"
#include "Compiler.h"
#include "Config.h"
#include "Diagnostics.h"
#include "GlobalCompilationDatabase.h"
#include "ParsedAST.h"
#include "Preamble.h"
#include "clang-include-cleaner/Record.h"
#include "support/Cancellation.h"
#include "support/Context.h"
#include "support/Logger.h"
#include "support/MemoryTree.h"
#include "support/Path.h"
#include "support/ThreadCrashReporter.h"
#include "support/Threading.h"
#include "support/Trace.h"
#include "clang/Basic/Stack.h"
#include "clang/Frontend/CompilerInvocation.h"
#include "clang/Tooling/CompilationDatabase.h"
#include "llvm/ADT/FunctionExtras.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Errc.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FormatVariadic.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/Threading.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <queue>
#include <string>
#include <thread>
#include <type_traits>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  clang::clangd::TUScheduler::ASTCache
 An LRU cache of idle ASTs. More...
 
class  clang::clangd::TUScheduler::HeaderIncluderCache
 A map from header files to an opened "proxy" file that includes them. More...
 
struct  clang::clangd::TUScheduler::FileData
 

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
 
namespace  clang::clangd
 

Functions

unsigned clang::clangd::getDefaultAsyncThreadsCount ()
 Returns a number of a default async threads to use for TUScheduler.
 

Variables

static clang::clangd::Key< std::string > clang::clangd::FileBeingProcessed
 

Variable Documentation

◆ Action

llvm::unique_function<void()> Action

Definition at line 699 of file TUScheduler.cpp.

◆ AddTime

steady_clock::time_point AddTime

Definition at line 701 of file TUScheduler.cpp.

◆ CI

std::unique_ptr<CompilerInvocation> CI

◆ CIDiags

std::vector<Diag> CIDiags

Definition at line 556 of file TUScheduler.cpp.

◆ ContentChanged

bool ContentChanged

Definition at line 665 of file TUScheduler.cpp.

Referenced by clang::clangd::TUScheduler::update().

◆ Ctx

Context Ctx

Definition at line 558 of file TUScheduler.cpp.

◆ Diagnostics

WantDiagnostics Diagnostics

◆ Inputs

ParseInputs Inputs

Definition at line 555 of file TUScheduler.cpp.

◆ Invalidate

Canceler Invalidate

Definition at line 706 of file TUScheduler.cpp.

◆ InvalidationPolicy

TUScheduler::ASTActionInvalidation InvalidationPolicy

Definition at line 705 of file TUScheduler.cpp.

◆ Name

std::string Name

Definition at line 700 of file TUScheduler.cpp.

◆ QueueCtx

std::optional<Context> QueueCtx

Definition at line 703 of file TUScheduler.cpp.

◆ Update

std::optional<UpdateType> Update

Definition at line 704 of file TUScheduler.cpp.

◆ WantDiags

WantDiagnostics WantDiags