32 Sema(
const Sema &) =
delete;
33 void operator=(
const Sema &) =
delete;
36 llvm::BumpPtrAllocator &Allocator;
54 llvm::StringMap<TParamCommandComment *> TemplateParameterDocs;
63 return Diags.Report(Loc, DiagID);
71 Sema(llvm::BumpPtrAllocator &Allocator,
const SourceManager &SourceMgr,
81 return Source.copy(Allocator);
138 StringRef CommandName,
199 void resolveParamCommandIndexes(
const FullComment *FC);
203 bool involvesFunctionType();
205 bool isFunctionDecl();
206 bool isAnyFunctionDecl();
210 bool isFunctionPointerVarDecl();
212 bool isObjCMethodDecl();
213 bool isObjCPropertyDecl();
214 bool isTemplateOrSpecialization();
215 bool isExplicitFunctionTemplateInstantiation();
216 bool isRecordLikeDecl();
217 bool isClassOrStructDecl();
220 bool isClassOrStructOrTagTypedefDecl();
222 bool isObjCInterfaceDecl();
223 bool isObjCProtocolDecl();
224 bool isClassTemplateDecl();
225 bool isFunctionTemplateDecl();
231 void inspectThisDecl();
234 unsigned resolveParmVarReference(StringRef Name,
239 unsigned correctTypoInParmVarReference(StringRef Typo,
242 bool resolveTParamReference(StringRef Name,
246 StringRef correctTypoInTParamReference(