#include "clang/Sema/MultiplexExternalSemaSource.h"
#include "clang/Sema/Lookup.h"
usingnamespaceclang;
char MultiplexExternalSemaSource::ID;
MultiplexExternalSemaSource::MultiplexExternalSemaSource(
ExternalSemaSource *S1, ExternalSemaSource *S2) { … }
MultiplexExternalSemaSource::~MultiplexExternalSemaSource() { … }
void MultiplexExternalSemaSource::AddSource(ExternalSemaSource *Source) { … }
Decl *MultiplexExternalSemaSource::GetExternalDecl(GlobalDeclID ID) { … }
void MultiplexExternalSemaSource::CompleteRedeclChain(const Decl *D) { … }
Selector MultiplexExternalSemaSource::GetExternalSelector(uint32_t ID) { … }
uint32_t MultiplexExternalSemaSource::GetNumExternalSelectors() { … }
Stmt *MultiplexExternalSemaSource::GetExternalDeclStmt(uint64_t Offset) { … }
CXXBaseSpecifier *MultiplexExternalSemaSource::GetExternalCXXBaseSpecifiers(
uint64_t Offset){ … }
CXXCtorInitializer **
MultiplexExternalSemaSource::GetExternalCXXCtorInitializers(uint64_t Offset) { … }
ExternalASTSource::ExtKind
MultiplexExternalSemaSource::hasExternalDefinitions(const Decl *D) { … }
bool MultiplexExternalSemaSource::
FindExternalVisibleDeclsByName(const DeclContext *DC, DeclarationName Name) { … }
void MultiplexExternalSemaSource::completeVisibleDeclsMap(const DeclContext *DC){ … }
void MultiplexExternalSemaSource::FindExternalLexicalDecls(
const DeclContext *DC, llvm::function_ref<bool(Decl::Kind)> IsKindWeWant,
SmallVectorImpl<Decl *> &Result) { … }
void MultiplexExternalSemaSource::FindFileRegionDecls(FileID File,
unsigned Offset,
unsigned Length,
SmallVectorImpl<Decl *> &Decls){ … }
void MultiplexExternalSemaSource::CompleteType(TagDecl *Tag) { … }
void MultiplexExternalSemaSource::CompleteType(ObjCInterfaceDecl *Class) { … }
void MultiplexExternalSemaSource::ReadComments() { … }
void MultiplexExternalSemaSource::StartedDeserializing() { … }
void MultiplexExternalSemaSource::FinishedDeserializing() { … }
void MultiplexExternalSemaSource::StartTranslationUnit(ASTConsumer *Consumer) { … }
void MultiplexExternalSemaSource::PrintStats() { … }
Module *MultiplexExternalSemaSource::getModule(unsigned ID) { … }
bool MultiplexExternalSemaSource::layoutRecordType(const RecordDecl *Record,
uint64_t &Size,
uint64_t &Alignment,
llvm::DenseMap<const FieldDecl *, uint64_t> &FieldOffsets,
llvm::DenseMap<const CXXRecordDecl *, CharUnits> &BaseOffsets,
llvm::DenseMap<const CXXRecordDecl *, CharUnits> &VirtualBaseOffsets){ … }
void MultiplexExternalSemaSource::
getMemoryBufferSizes(MemoryBufferSizes &sizes) const { … }
void MultiplexExternalSemaSource::InitializeSema(Sema &S) { … }
void MultiplexExternalSemaSource::ForgetSema() { … }
void MultiplexExternalSemaSource::ReadMethodPool(Selector Sel) { … }
void MultiplexExternalSemaSource::updateOutOfDateSelector(Selector Sel) { … }
void MultiplexExternalSemaSource::ReadKnownNamespaces(
SmallVectorImpl<NamespaceDecl*> &Namespaces){ … }
void MultiplexExternalSemaSource::ReadUndefinedButUsed(
llvm::MapVector<NamedDecl *, SourceLocation> &Undefined) { … }
void MultiplexExternalSemaSource::ReadMismatchingDeleteExpressions(
llvm::MapVector<FieldDecl *,
llvm::SmallVector<std::pair<SourceLocation, bool>, 4>> &
Exprs) { … }
bool MultiplexExternalSemaSource::LookupUnqualified(LookupResult &R, Scope *S){ … }
void MultiplexExternalSemaSource::ReadTentativeDefinitions(
SmallVectorImpl<VarDecl*> &TentativeDefs) { … }
void MultiplexExternalSemaSource::ReadUnusedFileScopedDecls(
SmallVectorImpl<const DeclaratorDecl*> &Decls) { … }
void MultiplexExternalSemaSource::ReadDelegatingConstructors(
SmallVectorImpl<CXXConstructorDecl*> &Decls) { … }
void MultiplexExternalSemaSource::ReadExtVectorDecls(
SmallVectorImpl<TypedefNameDecl*> &Decls) { … }
void MultiplexExternalSemaSource::ReadDeclsToCheckForDeferredDiags(
llvm::SmallSetVector<Decl *, 4> &Decls) { … }
void MultiplexExternalSemaSource::ReadUnusedLocalTypedefNameCandidates(
llvm::SmallSetVector<const TypedefNameDecl *, 4> &Decls) { … }
void MultiplexExternalSemaSource::ReadReferencedSelectors(
SmallVectorImpl<std::pair<Selector, SourceLocation> > &Sels) { … }
void MultiplexExternalSemaSource::ReadWeakUndeclaredIdentifiers(
SmallVectorImpl<std::pair<IdentifierInfo*, WeakInfo> > &WI) { … }
void MultiplexExternalSemaSource::ReadUsedVTables(
SmallVectorImpl<ExternalVTableUse> &VTables) { … }
void MultiplexExternalSemaSource::ReadPendingInstantiations(
SmallVectorImpl<std::pair<ValueDecl*,
SourceLocation> > &Pending) { … }
void MultiplexExternalSemaSource::ReadLateParsedTemplates(
llvm::MapVector<const FunctionDecl *, std::unique_ptr<LateParsedTemplate>>
&LPTMap) { … }
TypoCorrection MultiplexExternalSemaSource::CorrectTypo(
const DeclarationNameInfo &Typo,
int LookupKind, Scope *S, CXXScopeSpec *SS,
CorrectionCandidateCallback &CCC,
DeclContext *MemberContext,
bool EnteringContext,
const ObjCObjectPointerType *OPT) { … }
bool MultiplexExternalSemaSource::MaybeDiagnoseMissingCompleteType(
SourceLocation Loc, QualType T) { … }
void MultiplexExternalSemaSource::AssignedLambdaNumbering(
CXXRecordDecl *Lambda) { … }