|
clang 23.0.0git
|
#include "clang/Sema/SemaCodeCompletion.h"
Classes | |
| struct | CodeCompleteExpressionData |
Public Types | |
| enum | ParserCompletionContext { PCC_Namespace , PCC_Class , PCC_ObjCInterface , PCC_ObjCImplementation , PCC_ObjCInstanceVariableList , PCC_Template , PCC_MemberTemplate , PCC_Expression , PCC_Statement , PCC_ForInit , PCC_Condition , PCC_RecoveryInFunction , PCC_Type , PCC_ParenthesizedExpression , PCC_LocalDeclarationSpecifiers , PCC_TopLevelOrExpression } |
| Describes the context in which code completion occurs. More... | |
| enum class | AttributeCompletion { Attribute , Scope , None } |
| using | TemplateTy = OpaquePtr<TemplateName> |
| using | DeclGroupPtrTy = OpaquePtr<DeclGroupRef> |
Public Attributes | |
| CodeCompleteConsumer * | CodeCompleter |
| Code-completion consumer. | |
| HeuristicResolver | Resolver |
| Public Attributes inherited from clang::SemaBase | |
| Sema & | SemaRef |
Definition at line 38 of file SemaCodeCompletion.h.
Definition at line 43 of file SemaCodeCompletion.h.
Definition at line 42 of file SemaCodeCompletion.h.
|
strong |
| Enumerator | |
|---|---|
| Attribute | |
| Scope | |
| None | |
Definition at line 121 of file SemaCodeCompletion.h.
Describes the context in which code completion occurs.
Definition at line 50 of file SemaCodeCompletion.h.
| SemaCodeCompletion::SemaCodeCompletion | ( | Sema & | S, |
| CodeCompleteConsumer * | CompletionConsumer ) |
Definition at line 10612 of file SemaCodeComplete.cpp.
References CodeCompleter, clang::SemaBase::getASTContext(), Resolver, and clang::SemaBase::SemaBase().
| void SemaCodeCompletion::CodeCompleteAfterFunctionEquals | ( | Declarator & | D | ) |
Definition at line 7384 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::CPlusPlus11, clang::CPlusPlus20, clang::Declarator::getFunctionTypeInfo(), clang::SemaBase::getLangOpts(), clang::Declarator::getName(), HandleCodeCompleteResults(), clang::IK_ConstructorName, clang::IK_DestructorName, clang::IK_OperatorFunctionId, clang::Declarator::isFunctionDeclarator(), clang::DeclaratorChunk::FunctionTypeInfo::NumParams, and clang::SemaBase::SemaRef.
Definition at line 6856 of file SemaCodeComplete.cpp.
References AddMacroResults(), AddOrdinaryNameResults(), AddPrettyFunctionResults(), clang::CodeCompletionString::CK_HorizontalSpace, clang::CodeCompletionString::CK_LeftBrace, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightBrace, clang::CodeCompletionString::CK_RightParen, clang::CodeCompletionString::CK_SemiColon, clang::CodeCompletionString::CK_VerticalSpace, CodeCompleter, clang::CPlusPlus, clang::Scope::getFnParent(), clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, mapCodeCompletionContext(), PCC_Statement, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteAttribute | ( | AttributeCommonInfo::Syntax | Syntax, |
| AttributeCompletion | Completion = AttributeCompletion::Attribute, | ||
| const IdentifierInfo * | Scope = nullptr ) |
Definition at line 4919 of file SemaCodeComplete.cpp.
References clang::AttributeCommonInfo::AS_C23, clang::AttributeCommonInfo::AS_CXX11, clang::AttributeCommonInfo::AS_GNU, clang::CodeCompletionContext::CCC_Attribute, clang::CodeCompletionString::CK_Comma, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightParen, CodeCompleter, clang::First, clang::ParsedAttrInfo::getAllBuiltin(), clang::SemaBase::getASTContext(), clang::SemaBase::getLangOpts(), clang::IdentifierInfo::getName(), HandleCodeCompleteResults(), None, noUnderscoreAttrScope(), Scope, clang::SemaBase::SemaRef, clang::Text, and underscoreAttrScope().
| void SemaCodeCompletion::CodeCompleteAvailabilityPlatformName | ( | ) |
Definition at line 10573 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Other, CodeCompleter, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteBracketDeclarator | ( | Scope * | S | ) |
Definition at line 6241 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), clang::SemaBase::getASTContext(), and Scope.
| void SemaCodeCompletion::CodeCompleteCase | ( | Scope * | S | ) |
Definition at line 6245 of file SemaCodeComplete.cpp.
References AddEnumerators(), AddMacroResults(), clang::CodeCompletionContext::CCC_Expression, CodeCompleteExpression(), CodeCompleter, clang::Data, clang::Enum, clang::Enumerator, clang::SemaBase::getASTContext(), clang::CaseStmt::getLHS(), HandleCodeCompleteResults(), clang::Expr::IgnoreParenCasts(), Scope, clang::SemaBase::SemaRef, clang::Switch, and clang::ast_matchers::type.
| void SemaCodeCompletion::CodeCompleteConstructorInitializer | ( | Decl * | Constructor, |
| ArrayRef< CXXCtorInitializer * > | Initializers ) |
Definition at line 7177 of file SemaCodeComplete.cpp.
References AddFunctionParameterChunks(), clang::CXXRecordDecl::bases(), clang::cast(), clang::CodeCompletionContext::CCC_Symbol, clang::CCP_MemberDeclaration, clang::CCP_NextInitializer, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightParen, CodeCompleter, clang::Constructor, CXCursor_MemberRef, clang::RecordDecl::fields(), clang::Function, clang::SemaBase::getASTContext(), getCompletionPrintingPolicy(), getConstructors(), clang::getCursorKindForDecl(), HandleCodeCompleteResults(), clang::isa(), clang::SemaBase::SemaRef, and clang::CXXRecordDecl::vbases().
| void SemaCodeCompletion::CodeCompleteDeclSpec | ( | Scope * | S, |
| DeclSpec & | DS, | ||
| bool | AllowNonIdentifiers, | ||
| bool | AllowNestedNameSpecifiers ) |
Definition at line 4833 of file SemaCodeComplete.cpp.
References AddClassMessageCompletions(), clang::Scope::AtCatchScope, clang::C99, clang::CodeCompletionContext::CCC_NewName, clang::CodeCompletionContext::CCC_SymbolOrNewName, clang::Scope::ClassScope, CodeCompleter, clang::CPlusPlus, clang::CPlusPlus11, clang::Scope::DeclScope, clang::Scope::FunctionPrototypeScope, clang::Scope::getFlags(), clang::SemaBase::getLangOpts(), clang::DeclSpec::getParsedSpecifiers(), clang::DeclSpec::getRepAsType(), clang::DeclSpec::getTypeSpecComplex(), clang::DeclSpec::getTypeSpecSign(), clang::DeclSpec::getTypeSpecType(), HandleCodeCompleteResults(), clang::DeclSpec::isTypeAltiVecVector(), clang::Sema::LookupNestedNameSpecifierName, clang::DeclSpec::PQ_TypeSpecifier, clang::Result, Scope, clang::SemaBase::SemaRef, clang::Scope::TemplateParamScope, clang::DeclSpec::TSC_unspecified, clang::DeclSpec::TST_class, clang::DeclSpec::TST_struct, clang::DeclSpec::TST_typename, and clang::Unspecified.
| void SemaCodeCompletion::CodeCompleteDesignator | ( | const QualType | BaseType, |
| llvm::ArrayRef< Expr * > | InitExprs, | ||
| const Designation & | D ) |
Trigger code completion for a record of BaseType.
InitExprs are expressions in the initializer list seen so far and D is the current Designation being parsed.
Definition at line 6760 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_DotMemberAccess, CodeCompleter, getAsRecordDecl(), getDesignatedType(), HandleCodeCompleteResults(), Resolver, clang::Result, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteExpression | ( | Scope * | S, |
| const CodeCompleteExpressionData & | Data, | ||
| bool | IsAddressOfOperand = false ) |
Perform code-completion in an expression context when we know what type we're looking for.
Definition at line 5169 of file SemaCodeComplete.cpp.
References AddEnumerators(), AddLambdaCompletion(), AddMacroResults(), AddOrdinaryNameResults(), AddPrettyFunctionResults(), clang::CodeCompletionContext::CCC_Expression, clang::CodeCompletionContext::CCC_ParenthesizedExpression, CodeCompleter, clang::CPlusPlus11, clang::Data, clang::Enum, clang::SemaBase::getASTContext(), clang::Scope::getFnParent(), clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, PCC_Expression, PCC_ParenthesizedExpression, Scope, clang::SemaBase::SemaRef, TryDeconstructFunctionLike(), and WantTypesInContext().
Referenced by CodeCompleteBracketDeclarator(), CodeCompleteCase(), CodeCompleteExpression(), CodeCompleteInitializer(), CodeCompleteObjCClassMessage(), CodeCompleteObjCForCollection(), CodeCompleteObjCInstanceMessage(), and CodeCompletePostfixExpression().
| void SemaCodeCompletion::CodeCompleteExpression | ( | Scope * | S, |
| QualType | PreferredType, | ||
| bool | IsParenthesized = false, | ||
| bool | IsAddressOfOperand = false ) |
Definition at line 5240 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), and Scope.
| void SemaCodeCompletion::CodeCompleteFunctionQualifiers | ( | DeclSpec & | DS, |
| Declarator & | D, | ||
| const VirtSpecifiers * | VS = nullptr ) |
Definition at line 6218 of file SemaCodeComplete.cpp.
References AddTypeQualifierResults(), clang::CodeCompletionContext::CCC_TypeQualifiers, CodeCompleter, clang::CPlusPlus11, clang::Declarator::getContext(), clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Declarator::isCtorOrDtor(), clang::VirtSpecifiers::isFinalSpecified(), clang::VirtSpecifiers::isOverrideSpecified(), clang::Declarator::isStaticMember(), clang::Member, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteIncludedFile | ( | llvm::StringRef | Dir, |
| bool | IsAngled ) |
Definition at line 10423 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_IncludedFile, CodeCompleter, HandleCodeCompleteResults(), clang::DirectoryLookup::LT_Framework, clang::DirectoryLookup::LT_HeaderMap, clang::DirectoryLookup::LT_NormalDir, and clang::SemaBase::SemaRef.
Definition at line 6795 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), CodeCompleteOrdinaryName(), clang::Data, clang::ValueDecl::getType(), PCC_Expression, and Scope.
| void SemaCodeCompletion::CodeCompleteInPreprocessorConditionalExclusion | ( | Scope * | S | ) |
Definition at line 10351 of file SemaCodeComplete.cpp.
References CodeCompleteOrdinaryName(), clang::Scope::getFnParent(), PCC_Namespace, PCC_RecoveryInFunction, and Scope.
| void SemaCodeCompletion::CodeCompleteKeywordAfterIf | ( | bool | AfterExclaim | ) | const |
Definition at line 6810 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Other, clang::CodeCompletionString::CK_HorizontalSpace, clang::CodeCompletionString::CK_LeftBrace, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightBrace, clang::CodeCompletionString::CK_RightParen, clang::CodeCompletionString::CK_VerticalSpace, CodeCompleter, clang::CPlusPlus17, clang::CPlusPlus23, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteLambdaIntroducer | ( | Scope * | S, |
| LambdaIntroducer & | Intro, | ||
| bool | AfterAmpersand ) |
Definition at line 7340 of file SemaCodeComplete.cpp.
References addThisCompletion(), clang::C, clang::LambdaIntroducer::Captures, clang::CodeCompletionContext::CCC_Other, clang::CCP_LocalDeclaration, CodeCompleter, clang::Scope::decls(), clang::LambdaIntroducer::Default, clang::Scope::getParent(), HandleCodeCompleteResults(), isNamespaceScope(), clang::LCD_ByCopy, clang::LCK_This, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteMemberReferenceExpr | ( | Scope * | S, |
| Expr * | Base, | ||
| Expr * | OtherOpBase, | ||
| SourceLocation | OpLoc, | ||
| bool | IsArrow, | ||
| bool | IsBaseExprStatement, | ||
| QualType | PreferredType ) |
Definition at line 5952 of file SemaCodeComplete.cpp.
References AddObjCProperties(), AddRecordMembersCompletionResults(), clang::CodeCompletionContext::CCC_ArrowMemberAccess, clang::CodeCompletionContext::CCC_DotMemberAccess, clang::CodeCompletionContext::CCC_ObjCPropertyAccess, clang::Class, CodeCompleter, clang::FixItHint::CreateReplacement(), clang::ActionResult< PtrTy, Compress >::get(), clang::Type::getAs(), clang::Type::getAsObjCInterfacePointerType(), getAsRecordDecl(), clang::CharSourceRange::getTokenRange(), HandleCodeCompleteResults(), clang::ActionResult< PtrTy, Compress >::isInvalid(), clang::Type::isObjCObjectOrInterfaceType(), clang::Type::isObjCObjectPointerType(), clang::Sema::LookupMemberName, clang::ObjCObjectPointerType::quals(), Resolver, clang::Result, Scope, clang::SemaBase::SemaRef, clang::CodeCompletionContext::setPreferredType(), and clang::VK_LValue.
| void SemaCodeCompletion::CodeCompleteModuleImport | ( | SourceLocation | ImportLoc, |
| ModuleIdPath | Path ) |
Definition at line 4684 of file SemaCodeComplete.cpp.
References clang::Module::AllVisible, clang::CodeCompletionContext::CCC_Other, clang::CCP_Declaration, CodeCompleter, CXAvailability_Available, CXAvailability_NotAvailable, CXCursor_ModuleImportDecl, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Result, clang::SemaBase::SemaRef, and clang::Module::submodules().
| void SemaCodeCompletion::CodeCompleteNamespaceAliasDecl | ( | Scope * | S | ) |
Definition at line 7125 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Namespace, CodeCompleter, HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteNamespaceDecl | ( | Scope * | S | ) |
Definition at line 7076 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Namespace, clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::DeclContext::decls_begin(), clang::DeclContext::decls_end(), clang::SemaBase::getASTContext(), clang::Scope::getEntity(), clang::Scope::getParent(), HandleCodeCompleteResults(), clang::isa(), clang::DeclContext::isFileContext(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteNaturalLanguage | ( | ) |
Definition at line 10567 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_NaturalLanguage, CodeCompleter, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCAtDirective | ( | Scope * | S | ) |
Definition at line 7529 of file SemaCodeComplete.cpp.
References AddObjCImplementationResults(), AddObjCInterfaceResults(), AddObjCTopLevelResults(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::isa(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCAtExpression | ( | Scope * | S | ) |
Definition at line 7692 of file SemaCodeComplete.cpp.
References AddObjCExpressionResults(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCAtStatement | ( | Scope * | S | ) |
Definition at line 7679 of file SemaCodeComplete.cpp.
References AddObjCExpressionResults(), AddObjCStatementResults(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCAtVisibility | ( | Scope * | S | ) |
Definition at line 7667 of file SemaCodeComplete.cpp.
References AddObjCVisibilityResults(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCClassForwardDecl | ( | Scope * | S | ) |
Definition at line 8886 of file SemaCodeComplete.cpp.
References AddInterfaceResults(), clang::CodeCompletionContext::CCC_ObjCClassForwardDecl, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCClassMessage | ( | Scope * | S, |
| ParsedType | Receiver, | ||
| ArrayRef< const IdentifierInfo * > | SelIdents, | ||
| bool | AtArgumentExpression, | ||
| bool | IsSuper = false ) |
Definition at line 8506 of file SemaCodeComplete.cpp.
References AddClassMessageCompletions(), clang::CodeCompletionContext::CCC_ObjCClassMessage, CodeCompleteExpression(), CodeCompleteOrdinaryName(), CodeCompleter, getPreferredArgumentTypeForMessageSend(), HandleCodeCompleteResults(), clang::QualType::isNull(), PCC_Expression, Scope, and clang::SemaBase::SemaRef.
Referenced by CodeCompleteObjCInstanceMessage(), and CodeCompleteObjCSuperMessage().
| void SemaCodeCompletion::CodeCompleteObjCClassPropertyRefExpr | ( | Scope * | S, |
| const IdentifierInfo & | ClassName, | ||
| SourceLocation | ClassNameLoc, | ||
| bool | IsBaseExprStatement ) |
Definition at line 6115 of file SemaCodeComplete.cpp.
References AddObjCProperties(), clang::CodeCompletionContext::CCC_ObjCPropertyAccess, CodeCompleter, HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCForCollection | ( | Scope * | S, |
| DeclGroupPtrTy | IterationVar ) |
Definition at line 8706 of file SemaCodeComplete.cpp.
References clang::DeclGroupRef::begin(), CodeCompleteExpression(), clang::Data, clang::DeclGroupRef::end(), clang::OpaquePtr< PtrTy >::get(), clang::OpaquePtr< PtrTy >::getAsOpaquePtr(), and Scope.
| void SemaCodeCompletion::CodeCompleteObjCImplementationCategory | ( | Scope * | S, |
| IdentifierInfo * | ClassName, | ||
| SourceLocation | ClassNameLoc ) |
Definition at line 8985 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_ObjCCategoryName, clang::Class, CodeCompleteObjCInterfaceCategory(), CodeCompleter, HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, clang::Result, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCImplementationDecl | ( | Scope * | S | ) |
Definition at line 8931 of file SemaCodeComplete.cpp.
References AddInterfaceResults(), clang::CodeCompletionContext::CCC_ObjCImplementation, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCInstanceMessage | ( | Scope * | S, |
| Expr * | Receiver, | ||
| ArrayRef< const IdentifierInfo * > | SelIdents, | ||
| bool | AtArgumentExpression, | ||
| ObjCInterfaceDecl * | Super = nullptr ) |
Definition at line 8541 of file SemaCodeComplete.cpp.
References AddObjCMethods(), AddSuperSendCompletion(), clang::CodeCompletionContext::CCC_ObjCInstanceMessage, CodeCompleteExpression(), CodeCompleteObjCClassMessage(), CodeCompleteOrdinaryName(), CodeCompleter, clang::CPlusPlus, clang::ActionResult< PtrTy, Compress >::get(), clang::Type::getAsObjCInterfacePointerType(), clang::Type::getAsObjCQualifiedIdType(), GetAssumedMessageSendExprType(), clang::SemaBase::getASTContext(), clang::SemaBase::getLangOpts(), getPreferredArgumentTypeForMessageSend(), clang::Expr::getType(), HandleCodeCompleteResults(), isAcceptableObjCMethod(), clang::ActionResult< PtrTy, Compress >::isInvalid(), clang::QualType::isNull(), clang::Selector::isNull(), clang::Type::isObjCClassType(), clang::Type::isObjCIdType(), clang::Type::isObjCQualifiedClassType(), clang::ActionResult< PtrTy, Compress >::isUsable(), clang::OpaquePtr< QualType >::make(), MK_Any, PCC_Expression, clang::Result, Scope, and clang::SemaBase::SemaRef.
Referenced by CodeCompleteObjCSuperMessage(), and CodeCompletePostfixExpression().
| void SemaCodeCompletion::CodeCompleteObjCInterfaceCategory | ( | Scope * | S, |
| IdentifierInfo * | ClassName, | ||
| SourceLocation | ClassNameLoc ) |
Definition at line 8950 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_ObjCCategoryName, clang::Class, CodeCompleter, clang::DeclContext::decls(), clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, clang::Result, Scope, and clang::SemaBase::SemaRef.
Referenced by CodeCompleteObjCImplementationCategory().
| void SemaCodeCompletion::CodeCompleteObjCInterfaceDecl | ( | Scope * | S | ) |
Definition at line 8867 of file SemaCodeComplete.cpp.
References AddInterfaceResults(), clang::CodeCompletionContext::CCC_ObjCInterfaceName, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCMessageReceiver | ( | Scope * | S | ) |
Definition at line 8294 of file SemaCodeComplete.cpp.
References AddMacroResults(), AddSuperSendCompletion(), addThisCompletion(), clang::CodeCompletionContext::CCC_ObjCMessageReceiver, CodeCompleter, clang::CPlusPlus11, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, clang::Method, clang::Result, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCMethodDecl | ( | Scope * | S, |
| std::optional< bool > | IsInstanceMethod, | ||
| ParsedType | ReturnType ) |
Definition at line 9895 of file SemaCodeComplete.cpp.
References AddObjCKeyValueCompletions(), AddObjCPassingTypeChunk(), clang::CodeCompletionContext::CCC_Other, clang::CCP_CodePattern, clang::CodeCompletionString::CK_Comma, clang::CodeCompletionString::CK_HorizontalSpace, clang::CodeCompletionString::CK_LeftBrace, clang::CodeCompletionString::CK_RightBrace, clang::CodeCompletionString::CK_SemiColon, clang::CodeCompletionString::CK_VerticalSpace, CodeCompleter, FindImplementableMethods(), clang::SemaBase::getASTContext(), getCompletionPrintingPolicy(), clang::Scope::getEntity(), clang::Selector::getNameForSlot(), clang::Selector::getNumArgs(), HandleCodeCompleteResults(), clang::QualType::isNull(), clang::Selector::isUnarySelector(), clang::Method, clang::Decl::OBJC_TQ_CSNullability, clang::Parameter, clang::Result, Scope, clang::SemaBase::SemaRef, setInBaseClass(), clang::QualType::substObjCTypeArgs(), and clang::ObjCInterfaceDecl::visible_categories().
| void SemaCodeCompletion::CodeCompleteObjCMethodDeclSelector | ( | Scope * | S, |
| bool | IsInstanceMethod, | ||
| bool | AtParameterName, | ||
| ParsedType | ReturnType, | ||
| ArrayRef< const IdentifierInfo * > | SelIdents ) |
Definition at line 10073 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Other, clang::CCP_Macro, CodeCompleter, CXCursor_MacroDefinition, HandleCodeCompleteResults(), isAcceptableObjCMethod(), clang::Selector::isNull(), MK_Any, clang::Result, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCPassingType | ( | Scope * | S, |
| ObjCDeclSpec & | DS, | ||
| bool | IsParameter ) |
Definition at line 8028 of file SemaCodeComplete.cpp.
References AddMacroResults(), AddOrdinaryNameResults(), clang::CodeCompletionContext::CCC_Type, clang::CCP_CodePattern, clang::CodeCompletionString::CK_Colon, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightParen, CodeCompleter, CXAvailability_Available, clang::ObjCDeclSpec::DQ_Bycopy, clang::ObjCDeclSpec::DQ_Byref, clang::ObjCDeclSpec::DQ_CSNullability, clang::ObjCDeclSpec::DQ_In, clang::ObjCDeclSpec::DQ_Inout, clang::ObjCDeclSpec::DQ_Oneway, clang::ObjCDeclSpec::DQ_Out, clang::ObjCDeclSpec::getObjCDeclQualifier(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, PCC_Type, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCPropertyDefinition | ( | Scope * | S | ) |
Definition at line 9027 of file SemaCodeComplete.cpp.
References AddObjCProperties(), clang::cast(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::DeclContext::decls(), getContainerDef(), HandleCodeCompleteResults(), clang::isa(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCPropertyFlags | ( | Scope * | S, |
| ObjCDeclSpec & | ODS ) |
Definition at line 7737 of file SemaCodeComplete.cpp.
References clang::CodeCompletionBuilder::AddPlaceholderChunk(), clang::CodeCompletionBuilder::AddTextChunk(), clang::CodeCompletionBuilder::AddTypedTextChunk(), clang::CodeCompletionContext::CCC_Other, CodeCompleter, clang::SemaBase::getLangOpts(), clang::ObjCDeclSpec::getPropertyAttributes(), HandleCodeCompleteResults(), clang::ObjCPropertyAttribute::kind_assign, clang::ObjCPropertyAttribute::kind_atomic, clang::ObjCPropertyAttribute::kind_copy, clang::ObjCPropertyAttribute::kind_getter, clang::ObjCPropertyAttribute::kind_nonatomic, clang::ObjCPropertyAttribute::kind_nullability, clang::ObjCPropertyAttribute::kind_readonly, clang::ObjCPropertyAttribute::kind_readwrite, clang::ObjCPropertyAttribute::kind_retain, clang::ObjCPropertyAttribute::kind_setter, clang::ObjCPropertyAttribute::kind_strong, clang::ObjCPropertyAttribute::kind_unsafe_unretained, clang::ObjCPropertyAttribute::kind_weak, clang::LangOptionsBase::NonGC, ObjCPropertyFlagConflicts(), Scope, clang::SemaBase::SemaRef, and clang::CodeCompletionBuilder::TakeString().
| void SemaCodeCompletion::CodeCompleteObjCPropertyGetter | ( | Scope * | S | ) |
Definition at line 7969 of file SemaCodeComplete.cpp.
References AddObjCMethods(), clang::CodeCompletionContext::CCC_Other, clang::Class, CodeCompleter, HandleCodeCompleteResults(), MK_ZeroArgSelector, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCPropertySetter | ( | Scope * | S | ) |
Definition at line 7998 of file SemaCodeComplete.cpp.
References AddObjCMethods(), clang::CodeCompletionContext::CCC_Other, clang::Class, CodeCompleter, HandleCodeCompleteResults(), MK_OneArgSelector, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCPropertySynthesizeIvar | ( | Scope * | S, |
| IdentifierInfo * | PropertyName ) |
Definition at line 9065 of file SemaCodeComplete.cpp.
References clang::cast(), clang::CodeCompletionContext::CCC_Other, clang::CCP_MemberDeclaration, clang::Class, CodeCompleter, clang::CodeCompletionAllocator::CopyString(), CXAvailability_Available, CXCursor_ObjCIvarDecl, clang::SemaBase::getASTContext(), getCompletionPrintingPolicy(), GetCompletionTypeString(), HandleCodeCompleteResults(), clang::isa(), clang::OBJC_PR_query_instance, clang::Property, clang::Result, clang::CodeCompletionResult::RK_Declaration, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCProtocolDecl | ( | Scope * | S | ) |
Definition at line 8828 of file SemaCodeComplete.cpp.
References AddProtocolResults(), clang::CodeCompletionContext::CCC_ObjCProtocolName, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCProtocolReferences | ( | ArrayRef< IdentifierLoc > | Protocols | ) |
Definition at line 8799 of file SemaCodeComplete.cpp.
References AddProtocolResults(), clang::CodeCompletionContext::CCC_ObjCProtocolName, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCSelector | ( | Scope * | S, |
| ArrayRef< const IdentifierInfo * > | SelIdents ) |
Definition at line 8722 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_SelectorName, CodeCompleter, clang::Selector::getNameForSlot(), clang::Selector::getNumArgs(), HandleCodeCompleteResults(), isAcceptableObjCSelector(), clang::Selector::isNull(), clang::Selector::isUnarySelector(), MK_Any, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCSuperclass | ( | Scope * | S, |
| IdentifierInfo * | ClassName, | ||
| SourceLocation | ClassNameLoc ) |
Definition at line 8905 of file SemaCodeComplete.cpp.
References AddInterfaceResults(), clang::CodeCompletionContext::CCC_ObjCInterfaceName, CodeCompleter, clang::SemaBase::getASTContext(), HandleCodeCompleteResults(), clang::isa(), clang::Sema::LookupOrdinaryName, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCSuperMessage | ( | Scope * | S, |
| SourceLocation | SuperLoc, | ||
| ArrayRef< const IdentifierInfo * > | SelIdents, | ||
| bool | AtArgumentExpression ) |
Definition at line 8332 of file SemaCodeComplete.cpp.
References CodeCompleteObjCClassMessage(), CodeCompleteObjCInstanceMessage(), clang::ActionResult< PtrTy, Compress >::get(), clang::SemaBase::getASTContext(), clang::ObjCInterfaceDecl::getSuperClass(), clang::isa(), clang::Sema::LookupOrdinaryName, clang::OpaquePtr< QualType >::make(), Scope, clang::SemaBase::SemaRef, and clang::UnqualifiedId::setIdentifier().
| void SemaCodeCompletion::CodeCompleteOperatorName | ( | Scope * | S | ) |
Definition at line 7143 of file SemaCodeComplete.cpp.
References AddTypeSpecifierResults(), clang::CodeCompletionContext::CCC_Type, CodeCompleter, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, clang::Result, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteOrdinaryName | ( | Scope * | S, |
| SemaCodeCompletion::ParserCompletionContext | CompletionContext ) |
Definition at line 4730 of file SemaCodeComplete.cpp.
References AddMacroResults(), AddOrdinaryNameResults(), AddPrettyFunctionResults(), CodeCompleter, clang::CPlusPlus, clang::Scope::getFnParent(), clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), mapCodeCompletionContext(), MaybeAddOverrideCalls(), PCC_Class, PCC_Condition, PCC_Expression, PCC_ForInit, PCC_LocalDeclarationSpecifiers, PCC_MemberTemplate, PCC_Namespace, PCC_ObjCImplementation, PCC_ObjCInstanceVariableList, PCC_ObjCInterface, PCC_ParenthesizedExpression, PCC_RecoveryInFunction, PCC_Statement, PCC_Template, PCC_TopLevelOrExpression, PCC_Type, Scope, clang::SemaBase::SemaRef, clang::VK_LValue, and WantTypesInContext().
Referenced by CodeCompleteInitializer(), CodeCompleteInPreprocessorConditionalExclusion(), CodeCompleteObjCClassMessage(), and CodeCompleteObjCInstanceMessage().
| void SemaCodeCompletion::CodeCompletePostfixExpression | ( | Scope * | S, |
| ExprResult | LHS, | ||
| QualType | PreferredType ) |
Definition at line 5249 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), CodeCompleteObjCInstanceMessage(), clang::ActionResult< PtrTy, Compress >::get(), clang::SemaBase::getLangOpts(), clang::ActionResult< PtrTy, Compress >::isInvalid(), clang::ObjC, and Scope.
| void SemaCodeCompletion::CodeCompletePreprocessorDirective | ( | bool | InConditional | ) |
Definition at line 10162 of file SemaCodeComplete.cpp.
References clang::C23, clang::CodeCompletionContext::CCC_PreprocessorDirective, clang::CodeCompletionString::CK_HorizontalSpace, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightParen, CodeCompleter, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), clang::ObjC, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompletePreprocessorExpression | ( | ) |
Definition at line 10386 of file SemaCodeComplete.cpp.
References AddMacroResults(), clang::CodeCompletionContext::CCC_PreprocessorExpression, clang::CodeCompletionString::CK_HorizontalSpace, clang::CodeCompletionString::CK_LeftParen, clang::CodeCompletionString::CK_RightParen, CodeCompleter, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompletePreprocessorMacroArgument | ( | Scope * | S, |
| IdentifierInfo * | Macro, | ||
| MacroInfo * | MacroInfo, | ||
| unsigned | Argument ) |
Definition at line 10411 of file SemaCodeComplete.cpp.
References clang::Macro, and Scope.
| void SemaCodeCompletion::CodeCompletePreprocessorMacroName | ( | bool | IsDefinition | ) |
Definition at line 10358 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_MacroName, clang::CodeCompletionContext::CCC_MacroNameUse, clang::CCP_CodePattern, CodeCompleter, CXCursor_MacroDefinition, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteQualifiedId | ( | Scope * | S, |
| CXXScopeSpec & | SS, | ||
| bool | EnteringContext, | ||
| bool | IsUsingDeclaration, | ||
| bool | IsAddressOfOperand, | ||
| bool | IsInDeclarationContext, | ||
| QualType | BaseType, | ||
| QualType | PreferredType ) |
Definition at line 6921 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Symbol, CodeCompleter, clang::NestedNameSpecifier::getAsType(), clang::Scope::getEntity(), clang::NestedNameSpecifier::getKind(), clang::CXXScopeSpec::getScopeRep(), HandleCodeCompleteResults(), clang::NestedNameSpecifier::isDependent(), clang::CXXScopeSpec::isEmpty(), clang::DeclContext::isFileContext(), clang::CXXScopeSpec::isInvalid(), clang::QualType::isNull(), clang::Sema::LookupOrdinaryName, MaybeAddOverrideCalls(), Scope, clang::SemaBase::SemaRef, clang::CodeCompletionContext::setCXXScopeSpecifier(), clang::CodeCompletionContext::setIsUsingDeclaration(), and clang::NestedNameSpecifier::Type.
Definition at line 6140 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_ClassOrStructTag, clang::CodeCompletionContext::CCC_EnumTag, clang::CodeCompletionContext::CCC_Other, clang::CodeCompletionContext::CCC_UnionTag, CodeCompleter, HandleCodeCompleteResults(), clang::Sema::LookupNestedNameSpecifierName, clang::Sema::LookupTagName, Scope, clang::SemaBase::SemaRef, clang::DeclSpec::TST_class, clang::DeclSpec::TST_enum, clang::DeclSpec::TST_interface, clang::DeclSpec::TST_struct, and clang::DeclSpec::TST_union.
| void SemaCodeCompletion::CodeCompleteTypeQualifiers | ( | DeclSpec & | DS | ) |
Definition at line 6206 of file SemaCodeComplete.cpp.
References AddTypeQualifierResults(), clang::CodeCompletionContext::CCC_TypeQualifiers, CodeCompleter, clang::SemaBase::getLangOpts(), HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteUsing | ( | Scope * | S | ) |
Definition at line 7024 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_SymbolOrNewName, CodeCompleter, HandleCodeCompleteResults(), clang::Scope::isClassScope(), clang::Sema::LookupOrdinaryName, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteUsingDirective | ( | Scope * | S | ) |
Definition at line 7055 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Namespace, CodeCompleter, HandleCodeCompleteResults(), clang::Sema::LookupOrdinaryName, Scope, and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::GatherGlobalCodeCompletions | ( | CodeCompletionAllocator & | Allocator, |
| CodeCompletionTUInfo & | CCTUInfo, | ||
| SmallVectorImpl< CodeCompletionResult > & | Results ) |
Definition at line 10590 of file SemaCodeComplete.cpp.
References AddMacroResults(), clang::CodeCompletionContext::CCC_Recovery, CodeCompleter, clang::SemaBase::getASTContext(), clang::Sema::LookupAnyName, and clang::SemaBase::SemaRef.
| QualType SemaCodeCompletion::ProduceCallSignatureHelp | ( | Expr * | Fn, |
| ArrayRef< Expr * > | Args, | ||
| SourceLocation | OpenParLoc ) |
Determines the preferred type of the current function argument, by examining the signatures of all possible overloads.
Returns null if unknown or ambiguous, or if code completion is off.
If the code completion point has been reached, also reports the function signatures that were considered.
FIXME: rename to GuessCallArgumentType to reduce confusion.
Definition at line 6401 of file SemaCodeComplete.cpp.
References anyNullArguments(), clang::UnresolvedSetImpl::append(), CodeCompleter, clang::CPlusPlus, clang::OverloadCandidateSet::CSK_CodeCompletion, clang::OverloadCandidateSet::empty(), clang::Decl::getAccess(), clang::Type::getAs(), clang::Type::getAsCXXRecordDecl(), clang::SemaBase::getASTContext(), clang::SemaBase::getLangOpts(), clang::Type::getPointeeType(), clang::Expr::getType(), clang::ValueDecl::getType(), clang::Expr::isTypeDependent(), clang::Sema::LookupOrdinaryName, clang::DeclAccessPair::make(), mergeCandidatesWithResults(), ProduceSignatureHelp(), Resolver, and clang::SemaBase::SemaRef.
| QualType SemaCodeCompletion::ProduceConstructorSignatureHelp | ( | QualType | Type, |
| SourceLocation | Loc, | ||
| ArrayRef< Expr * > | Args, | ||
| SourceLocation | OpenParLoc, | ||
| bool | Braced ) |
Definition at line 6582 of file SemaCodeComplete.cpp.
References clang::C, CodeCompleter, clang::CPlusPlus, clang::OverloadCandidateSet::CSK_CodeCompletion, clang::Type::getAsRecordDecl(), clang::SemaBase::getLangOpts(), getNextAggregateIndexAfterDesignatedInit(), clang::CodeCompleteConsumer::OverloadCandidate::getNumParams(), clang::CXXRecordDecl::isAggregate(), clang::TagDecl::isUnion(), clang::DeclAccessPair::make(), mergeCandidatesWithResults(), ProduceSignatureHelp(), and clang::SemaBase::SemaRef.
Referenced by ProduceCtorInitMemberSignatureHelp().
| QualType SemaCodeCompletion::ProduceCtorInitMemberSignatureHelp | ( | Decl * | ConstructorDecl, |
| CXXScopeSpec | SS, | ||
| ParsedType | TemplateTypeTy, | ||
| ArrayRef< Expr * > | ArgExprs, | ||
| IdentifierInfo * | II, | ||
| SourceLocation | OpenParLoc, | ||
| bool | Braced ) |
Definition at line 6660 of file SemaCodeComplete.cpp.
References CodeCompleter, clang::Constructor, ProduceConstructorSignatureHelp(), and clang::SemaBase::SemaRef.
| QualType SemaCodeCompletion::ProduceTemplateArgumentSignatureHelp | ( | TemplateTy | ParsedTemplate, |
| ArrayRef< ParsedTemplateArgument > | Args, | ||
| SourceLocation | LAngleLoc ) |
Definition at line 6702 of file SemaCodeComplete.cpp.
References argMatchesTemplateParams(), CodeCompleter, clang::OpaquePtr< PtrTy >::get(), ProduceSignatureHelp(), clang::SemaBase::SemaRef, and clang::Template.
| CodeCompleteConsumer* clang::SemaCodeCompletion::CodeCompleter |
Code-completion consumer.
Definition at line 46 of file SemaCodeCompletion.h.
Referenced by AddRecordMembersCompletionResults(), CodeCompleteAfterFunctionEquals(), CodeCompleteAfterIf(), CodeCompleteAttribute(), CodeCompleteAvailabilityPlatformName(), CodeCompleteCase(), CodeCompleteConstructorInitializer(), CodeCompleteDeclSpec(), CodeCompleteDesignator(), CodeCompleteExpression(), CodeCompleteFunctionQualifiers(), CodeCompleteIncludedFile(), CodeCompleteKeywordAfterIf(), CodeCompleteLambdaIntroducer(), CodeCompleteMemberReferenceExpr(), CodeCompleteModuleImport(), CodeCompleteNamespaceAliasDecl(), CodeCompleteNamespaceDecl(), CodeCompleteNaturalLanguage(), CodeCompleteObjCAtDirective(), CodeCompleteObjCAtExpression(), CodeCompleteObjCAtStatement(), CodeCompleteObjCAtVisibility(), CodeCompleteObjCClassForwardDecl(), CodeCompleteObjCClassMessage(), CodeCompleteObjCClassPropertyRefExpr(), CodeCompleteObjCImplementationCategory(), CodeCompleteObjCImplementationDecl(), CodeCompleteObjCInstanceMessage(), CodeCompleteObjCInterfaceCategory(), CodeCompleteObjCInterfaceDecl(), CodeCompleteObjCMessageReceiver(), CodeCompleteObjCMethodDecl(), CodeCompleteObjCMethodDeclSelector(), CodeCompleteObjCPassingType(), CodeCompleteObjCPropertyDefinition(), CodeCompleteObjCPropertyFlags(), CodeCompleteObjCPropertyGetter(), CodeCompleteObjCPropertySetter(), CodeCompleteObjCPropertySynthesizeIvar(), CodeCompleteObjCProtocolDecl(), CodeCompleteObjCProtocolReferences(), CodeCompleteObjCSelector(), CodeCompleteObjCSuperclass(), CodeCompleteOperatorName(), CodeCompleteOrdinaryName(), CodeCompletePreprocessorDirective(), CodeCompletePreprocessorExpression(), CodeCompletePreprocessorMacroName(), CodeCompleteQualifiedId(), CodeCompleteTag(), CodeCompleteTypeQualifiers(), CodeCompleteUsing(), CodeCompleteUsingDirective(), GatherGlobalCodeCompletions(), ProduceCallSignatureHelp(), ProduceConstructorSignatureHelp(), ProduceCtorInitMemberSignatureHelp(), ProduceSignatureHelp(), ProduceTemplateArgumentSignatureHelp(), and SemaCodeCompletion().
| HeuristicResolver clang::SemaCodeCompletion::Resolver |
Definition at line 47 of file SemaCodeCompletion.h.
Referenced by CodeCompleteDesignator(), CodeCompleteMemberReferenceExpr(), ProduceCallSignatureHelp(), and SemaCodeCompletion().