|
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 10608 of file SemaCodeComplete.cpp.
References CodeCompleter, clang::SemaBase::getASTContext(), Resolver, and clang::SemaBase::SemaBase().
| void SemaCodeCompletion::CodeCompleteAfterFunctionEquals | ( | Declarator & | D | ) |
Definition at line 7382 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 6854 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 4917 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 10569 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_Other, CodeCompleter, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteBracketDeclarator | ( | Scope * | S | ) |
Definition at line 6239 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), clang::SemaBase::getASTContext(), and Scope.
| void SemaCodeCompletion::CodeCompleteCase | ( | Scope * | S | ) |
Definition at line 6243 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 7175 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 4831 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 6758 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 5167 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 5238 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), and Scope.
| void SemaCodeCompletion::CodeCompleteFunctionQualifiers | ( | DeclSpec & | DS, |
| Declarator & | D, | ||
| const VirtSpecifiers * | VS = nullptr ) |
Definition at line 6216 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 10419 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 6793 of file SemaCodeComplete.cpp.
References CodeCompleteExpression(), CodeCompleteOrdinaryName(), clang::Data, clang::ValueDecl::getType(), PCC_Expression, and Scope.
| void SemaCodeCompletion::CodeCompleteInPreprocessorConditionalExclusion | ( | Scope * | S | ) |
Definition at line 10349 of file SemaCodeComplete.cpp.
References CodeCompleteOrdinaryName(), clang::Scope::getFnParent(), PCC_Namespace, PCC_RecoveryInFunction, and Scope.
| void SemaCodeCompletion::CodeCompleteKeywordAfterIf | ( | bool | AfterExclaim | ) | const |
Definition at line 6808 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 7338 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 5950 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 4682 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 7123 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 7074 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 10563 of file SemaCodeComplete.cpp.
References clang::CodeCompletionContext::CCC_NaturalLanguage, CodeCompleter, HandleCodeCompleteResults(), and clang::SemaBase::SemaRef.
| void SemaCodeCompletion::CodeCompleteObjCAtDirective | ( | Scope * | S | ) |
Definition at line 7527 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 7690 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 7677 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 7665 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 8884 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 8504 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 6113 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 8704 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 8983 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 8929 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 8539 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 8948 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 8865 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 8292 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 9893 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 10071 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 8026 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 9025 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 7735 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 7967 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 7996 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 9063 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 8826 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 8797 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 8720 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 8903 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 8330 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 7141 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 4728 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 5247 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 10160 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 10382 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 10407 of file SemaCodeComplete.cpp.
References clang::Macro, and Scope.
| void SemaCodeCompletion::CodeCompletePreprocessorMacroName | ( | bool | IsDefinition | ) |
Definition at line 10356 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 6919 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 6138 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 6204 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 7022 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 7053 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 10586 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 6399 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 6580 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 6658 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 6700 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().