Lines Matching refs:ND

80       void Add(NamedDecl *ND, unsigned Index) {
83 DeclOrVector = ND;
98 DeclIndexPair(ND, Index));
264 /// \param ND the declaration that we are inspecting.
268 bool isInterestingDecl(NamedDecl *ND, bool &AsNestedNameSpecifier) const;
320 bool IsOrdinaryName(NamedDecl *ND) const;
321 bool IsOrdinaryNonTypeName(NamedDecl *ND) const;
322 bool IsIntegralConstantValue(NamedDecl *ND) const;
323 bool IsOrdinaryNonValueName(NamedDecl *ND) const;
324 bool IsNestedNameSpecifier(NamedDecl *ND) const;
325 bool IsEnum(NamedDecl *ND) const;
326 bool IsClassOrStruct(NamedDecl *ND) const;
327 bool IsUnion(NamedDecl *ND) const;
328 bool IsNamespace(NamedDecl *ND) const;
329 bool IsNamespaceOrAlias(NamedDecl *ND) const;
330 bool IsType(NamedDecl *ND) const;
331 bool IsMember(NamedDecl *ND) const;
332 bool IsObjCIvar(NamedDecl *ND) const;
333 bool IsObjCMessageReceiver(NamedDecl *ND) const;
334 bool IsObjCMessageReceiverOrLambdaCapture(NamedDecl *ND) const;
335 bool IsObjCCollection(NamedDecl *ND) const;
336 bool IsImpossibleToSatisfy(NamedDecl *ND) const;
390 if (NamedDecl *ND = DeclOrIterator.dyn_cast<NamedDecl *>())
391 return reference(ND, SingleDeclIndex);
416 if (NamedDecl *ND = DeclOrVector.dyn_cast<NamedDecl *>())
417 return iterator(ND, SingleDeclIndex);
478 bool ResultBuilder::isInterestingDecl(NamedDecl *ND,
482 ND = ND->getUnderlyingDecl();
483 unsigned IDNS = ND->getIdentifierNamespace();
486 if (!ND->getDeclName())
495 if (isa<ClassTemplateSpecializationDecl>(ND) ||
496 isa<ClassTemplatePartialSpecializationDecl>(ND))
500 if (isa<UsingDecl>(ND))
504 if (const IdentifierInfo *Id = ND->getIdentifier()) {
517 (ND->getLocation().isInvalid() ||
519 SemaRef.SourceMgr.getSpellingLoc(ND->getLocation()))))
525 ((isa<NamespaceDecl>(ND) || isa<NamespaceAliasDecl>(ND)) &&
532 if (Filter && !(this->*Filter)(ND)) {
535 IsNestedNameSpecifier(ND) &&
537 (isa<CXXRecordDecl>(ND) &&
538 cast<CXXRecordDecl>(ND)->isInjectedClassName()))) {
648 QualType clang::getDeclUsageType(ASTContext &C, NamedDecl *ND) {
649 ND = cast<NamedDecl>(ND->getUnderlyingDecl());
651 if (TypeDecl *Type = dyn_cast<TypeDecl>(ND))
653 if (ObjCInterfaceDecl *Iface = dyn_cast<ObjCInterfaceDecl>(ND))
657 if (FunctionDecl *Function = dyn_cast<FunctionDecl>(ND))
659 else if (ObjCMethodDecl *Method = dyn_cast<ObjCMethodDecl>(ND))
661 else if (FunctionTemplateDecl *FunTmpl = dyn_cast<FunctionTemplateDecl>(ND))
663 else if (EnumConstantDecl *Enumerator = dyn_cast<EnumConstantDecl>(ND))
665 else if (ObjCPropertyDecl *Property = dyn_cast<ObjCPropertyDecl>(ND))
667 else if (ValueDecl *Value = dyn_cast<ValueDecl>(ND))
803 NamedDecl *ND = I->first;
805 if (ND->getCanonicalDecl() == CanonDecl) {
985 bool ResultBuilder::IsOrdinaryName(NamedDecl *ND) const {
986 ND = cast<NamedDecl>(ND->getUnderlyingDecl());
992 if (isa<ObjCIvarDecl>(ND))
996 return ND->getIdentifierNamespace() & IDNS;
1001 bool ResultBuilder::IsOrdinaryNonTypeName(NamedDecl *ND) const {
1002 ND = cast<NamedDecl>(ND->getUnderlyingDecl());
1003 if (isa<TypeDecl>(ND) || isa<ObjCInterfaceDecl>(ND))
1010 if (isa<ObjCIvarDecl>(ND))
1014 return ND->getIdentifierNamespace() & IDNS;
1017 bool ResultBuilder::IsIntegralConstantValue(NamedDecl *ND) const {
1018 if (!IsOrdinaryNonTypeName(ND))
1021 if (ValueDecl *VD = dyn_cast<ValueDecl>(ND->getUnderlyingDecl()))
1030 bool ResultBuilder::IsOrdinaryNonValueName(NamedDecl *ND) const {
1031 ND = cast<NamedDecl>(ND->getUnderlyingDecl());
1037 return (ND->getIdentifierNamespace() & IDNS) &&
1038 !isa<ValueDecl>(ND) && !isa<FunctionTemplateDecl>(ND) &&
1039 !isa<ObjCPropertyDecl>(ND);
1044 bool ResultBuilder::IsNestedNameSpecifier(NamedDecl *ND) const {
1046 if (ClassTemplateDecl *ClassTemplate = dyn_cast<ClassTemplateDecl>(ND))
1047 ND = ClassTemplate->getTemplatedDecl();
1049 return SemaRef.isAcceptableNestedNameSpecifier(ND);
1053 bool ResultBuilder::IsEnum(NamedDecl *ND) const {
1054 return isa<EnumDecl>(ND);
1058 bool ResultBuilder::IsClassOrStruct(NamedDecl *ND) const {
1060 if (ClassTemplateDecl *ClassTemplate = dyn_cast<ClassTemplateDecl>(ND))
1061 ND = ClassTemplate->getTemplatedDecl();
1063 if (RecordDecl *RD = dyn_cast<RecordDecl>(ND))
1071 bool ResultBuilder::IsUnion(NamedDecl *ND) const {
1073 if (ClassTemplateDecl *ClassTemplate = dyn_cast<ClassTemplateDecl>(ND))
1074 ND = ClassTemplate->getTemplatedDecl();
1076 if (RecordDecl *RD = dyn_cast<RecordDecl>(ND))
1083 bool ResultBuilder::IsNamespace(NamedDecl *ND) const {
1084 return isa<NamespaceDecl>(ND);
1089 bool ResultBuilder::IsNamespaceOrAlias(NamedDecl *ND) const {
1090 return isa<NamespaceDecl>(ND) || isa<NamespaceAliasDecl>(ND);
1094 bool ResultBuilder::IsType(NamedDecl *ND) const {
1095 if (UsingShadowDecl *Using = dyn_cast<UsingShadowDecl>(ND))
1096 ND = Using->getTargetDecl();
1098 return isa<TypeDecl>(ND) || isa<ObjCInterfaceDecl>(ND);
1104 bool ResultBuilder::IsMember(NamedDecl *ND) const {
1105 if (UsingShadowDecl *Using = dyn_cast<UsingShadowDecl>(ND))
1106 ND = Using->getTargetDecl();
1108 return isa<ValueDecl>(ND) || isa<FunctionTemplateDecl>(ND) ||
1109 isa<ObjCPropertyDecl>(ND);
1145 bool ResultBuilder::IsObjCMessageReceiver(NamedDecl *ND) const {
1146 QualType T = getDeclUsageType(SemaRef.Context, ND);
1154 bool ResultBuilder::IsObjCMessageReceiverOrLambdaCapture(NamedDecl *ND) const {
1155 if (IsObjCMessageReceiver(ND))
1158 VarDecl *Var = dyn_cast<VarDecl>(ND);
1165 bool ResultBuilder::IsObjCCollection(NamedDecl *ND) const {
1166 if ((SemaRef.getLangOpts().CPlusPlus && !IsOrdinaryName(ND)) ||
1167 (!SemaRef.getLangOpts().CPlusPlus && !IsOrdinaryNonTypeName(ND)))
1170 QualType T = getDeclUsageType(SemaRef.Context, ND);
1180 bool ResultBuilder::IsImpossibleToSatisfy(NamedDecl *ND) const {
1186 bool ResultBuilder::IsObjCIvar(NamedDecl *ND) const {
1187 return isa<ObjCIvarDecl>(ND);
1201 virtual void FoundDecl(NamedDecl *ND, NamedDecl *Hiding, DeclContext *Ctx,
1205 Accessible = Results.getSema().IsSimplyAccessible(ND, Ctx);
1207 ResultBuilder::Result Result(ND, 0, false, Accessible);
1984 NamedDecl *ND,
1986 if (!ND)
1991 if (isa<CXXConstructorDecl>(ND) || isa<CXXConversionDecl>(ND))
1996 if (FunctionDecl *Function = dyn_cast<FunctionDecl>(ND))
1998 else if (ObjCMethodDecl *Method = dyn_cast<ObjCMethodDecl>(ND))
2000 else if (FunctionTemplateDecl *FunTmpl = dyn_cast<FunctionTemplateDecl>(ND))
2002 else if (EnumConstantDecl *Enumerator = dyn_cast<EnumConstantDecl>(ND))
2004 else if (isa<UnresolvedUsingValueDecl>(ND)) {
2006 } else if (ValueDecl *Value = dyn_cast<ValueDecl>(ND)) {
2008 } else if (ObjCPropertyDecl *Property = dyn_cast<ObjCPropertyDecl>(ND))
2370 NamedDecl *ND, CodeCompletionBuilder &Result) {
2371 DeclarationName Name = ND->getDeclName();
2406 Result.getAllocator().CopyString(ND->getNameAsString()));
2425 Result.getAllocator().CopyString(ND->getNameAsString()));
2525 NamedDecl *ND = Declaration;
2526 Result.addParentContext(ND->getDeclContext());
2530 Result.getAllocator().CopyString(ND->getNameAsString()));
2535 for (Decl::attr_iterator i = ND->attr_begin(); i != ND->attr_end(); ++i) {
2541 AddResultTypeChunk(Ctx, Policy, ND, Result);
2543 if (FunctionDecl *Function = dyn_cast<FunctionDecl>(ND)) {
2546 AddTypedNameChunk(Ctx, Policy, ND, Result);
2554 if (FunctionTemplateDecl *FunTmpl = dyn_cast<FunctionTemplateDecl>(ND)) {
2608 if (TemplateDecl *Template = dyn_cast<TemplateDecl>(ND)) {
2619 if (ObjCMethodDecl *Method = dyn_cast<ObjCMethodDecl>(ND)) {
2705 Result.getAllocator().CopyString(ND->getNameAsString()));
5170 NamedDecl *ND = LookupSingleName(S, Super, SuperLoc,
5172 if ((CDecl = dyn_cast_or_null<ObjCInterfaceDecl>(ND))) {
5174 } else if (TypeDecl *TD = dyn_cast_or_null<TypeDecl>(ND)) {
5178 } else if (ND && isa<UnresolvedUsingTypenameDecl>(ND)) {