clang  19.0.0git
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
clang::SemaCodeCompletion Class Reference

#include "clang/Sema/SemaCodeCompletion.h"

Inheritance diagram for clang::SemaCodeCompletion:
Inheritance graph
[legend]

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 Types inherited from clang::SemaBase
enum class  DeviceDiagnosticReason {
  None = 0 , OmpDevice = 1 << 0 , OmpHost = 1 << 1 , OmpAll = OmpDevice | OmpHost ,
  CudaDevice = 1 << 2 , CudaHost = 1 << 3 , CudaAll = CudaDevice | CudaHost , Sycl = 1 << 4 ,
  Esimd = 1 << 5 , All = OmpAll | CudaAll | Sycl | Esimd
}
 Bitmask to contain the list of reasons a single diagnostic should be emitted, based on its language. More...
 

Public Member Functions

 SemaCodeCompletion (Sema &S, CodeCompleteConsumer *CompletionConsumer)
 
void CodeCompleteModuleImport (SourceLocation ImportLoc, ModuleIdPath Path)
 
void CodeCompleteOrdinaryName (Scope *S, ParserCompletionContext CompletionContext)
 
void CodeCompleteDeclSpec (Scope *S, DeclSpec &DS, bool AllowNonIdentifiers, bool AllowNestedNameSpecifiers)
 
void CodeCompleteExpression (Scope *S, const CodeCompleteExpressionData &Data)
 Perform code-completion in an expression context when we know what type we're looking for. More...
 
void CodeCompleteExpression (Scope *S, QualType PreferredType, bool IsParenthesized=false)
 
void CodeCompleteMemberReferenceExpr (Scope *S, Expr *Base, Expr *OtherOpBase, SourceLocation OpLoc, bool IsArrow, bool IsBaseExprStatement, QualType PreferredType)
 
void CodeCompletePostfixExpression (Scope *S, ExprResult LHS, QualType PreferredType)
 
void CodeCompleteTag (Scope *S, unsigned TagSpec)
 
void CodeCompleteTypeQualifiers (DeclSpec &DS)
 
void CodeCompleteFunctionQualifiers (DeclSpec &DS, Declarator &D, const VirtSpecifiers *VS=nullptr)
 
void CodeCompleteBracketDeclarator (Scope *S)
 
void CodeCompleteCase (Scope *S)
 
void CodeCompleteAttribute (AttributeCommonInfo::Syntax Syntax, AttributeCompletion Completion=AttributeCompletion::Attribute, const IdentifierInfo *Scope=nullptr)
 
QualType 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. More...
 
QualType ProduceConstructorSignatureHelp (QualType Type, SourceLocation Loc, ArrayRef< Expr * > Args, SourceLocation OpenParLoc, bool Braced)
 
QualType ProduceCtorInitMemberSignatureHelp (Decl *ConstructorDecl, CXXScopeSpec SS, ParsedType TemplateTypeTy, ArrayRef< Expr * > ArgExprs, IdentifierInfo *II, SourceLocation OpenParLoc, bool Braced)
 
QualType ProduceTemplateArgumentSignatureHelp (TemplateTy, ArrayRef< ParsedTemplateArgument >, SourceLocation LAngleLoc)
 
void CodeCompleteInitializer (Scope *S, Decl *D)
 
void CodeCompleteDesignator (const QualType BaseType, llvm::ArrayRef< Expr * > InitExprs, const Designation &D)
 Trigger code completion for a record of BaseType. More...
 
void CodeCompleteAfterIf (Scope *S, bool IsBracedThen)
 
void CodeCompleteQualifiedId (Scope *S, CXXScopeSpec &SS, bool EnteringContext, bool IsUsingDeclaration, QualType BaseType, QualType PreferredType)
 
void CodeCompleteUsing (Scope *S)
 
void CodeCompleteUsingDirective (Scope *S)
 
void CodeCompleteNamespaceDecl (Scope *S)
 
void CodeCompleteNamespaceAliasDecl (Scope *S)
 
void CodeCompleteOperatorName (Scope *S)
 
void CodeCompleteConstructorInitializer (Decl *Constructor, ArrayRef< CXXCtorInitializer * > Initializers)
 
void CodeCompleteLambdaIntroducer (Scope *S, LambdaIntroducer &Intro, bool AfterAmpersand)
 
void CodeCompleteAfterFunctionEquals (Declarator &D)
 
void CodeCompleteObjCAtDirective (Scope *S)
 
void CodeCompleteObjCAtVisibility (Scope *S)
 
void CodeCompleteObjCAtStatement (Scope *S)
 
void CodeCompleteObjCAtExpression (Scope *S)
 
void CodeCompleteObjCPropertyFlags (Scope *S, ObjCDeclSpec &ODS)
 
void CodeCompleteObjCPropertyGetter (Scope *S)
 
void CodeCompleteObjCPropertySetter (Scope *S)
 
void CodeCompleteObjCPassingType (Scope *S, ObjCDeclSpec &DS, bool IsParameter)
 
void CodeCompleteObjCMessageReceiver (Scope *S)
 
void CodeCompleteObjCSuperMessage (Scope *S, SourceLocation SuperLoc, ArrayRef< const IdentifierInfo * > SelIdents, bool AtArgumentExpression)
 
void CodeCompleteObjCClassMessage (Scope *S, ParsedType Receiver, ArrayRef< const IdentifierInfo * > SelIdents, bool AtArgumentExpression, bool IsSuper=false)
 
void CodeCompleteObjCInstanceMessage (Scope *S, Expr *Receiver, ArrayRef< const IdentifierInfo * > SelIdents, bool AtArgumentExpression, ObjCInterfaceDecl *Super=nullptr)
 
void CodeCompleteObjCForCollection (Scope *S, DeclGroupPtrTy IterationVar)
 
void CodeCompleteObjCSelector (Scope *S, ArrayRef< const IdentifierInfo * > SelIdents)
 
void CodeCompleteObjCProtocolReferences (ArrayRef< IdentifierLocPair > Protocols)
 
void CodeCompleteObjCProtocolDecl (Scope *S)
 
void CodeCompleteObjCInterfaceDecl (Scope *S)
 
void CodeCompleteObjCClassForwardDecl (Scope *S)
 
void CodeCompleteObjCSuperclass (Scope *S, IdentifierInfo *ClassName, SourceLocation ClassNameLoc)
 
void CodeCompleteObjCImplementationDecl (Scope *S)
 
void CodeCompleteObjCInterfaceCategory (Scope *S, IdentifierInfo *ClassName, SourceLocation ClassNameLoc)
 
void CodeCompleteObjCImplementationCategory (Scope *S, IdentifierInfo *ClassName, SourceLocation ClassNameLoc)
 
void CodeCompleteObjCPropertyDefinition (Scope *S)
 
void CodeCompleteObjCPropertySynthesizeIvar (Scope *S, IdentifierInfo *PropertyName)
 
void CodeCompleteObjCMethodDecl (Scope *S, std::optional< bool > IsInstanceMethod, ParsedType ReturnType)
 
void CodeCompleteObjCMethodDeclSelector (Scope *S, bool IsInstanceMethod, bool AtParameterName, ParsedType ReturnType, ArrayRef< const IdentifierInfo * > SelIdents)
 
void CodeCompleteObjCClassPropertyRefExpr (Scope *S, const IdentifierInfo &ClassName, SourceLocation ClassNameLoc, bool IsBaseExprStatement)
 
void CodeCompletePreprocessorDirective (bool InConditional)
 
void CodeCompleteInPreprocessorConditionalExclusion (Scope *S)
 
void CodeCompletePreprocessorMacroName (bool IsDefinition)
 
void CodeCompletePreprocessorExpression ()
 
void CodeCompletePreprocessorMacroArgument (Scope *S, IdentifierInfo *Macro, MacroInfo *MacroInfo, unsigned Argument)
 
void CodeCompleteIncludedFile (llvm::StringRef Dir, bool IsAngled)
 
void CodeCompleteNaturalLanguage ()
 
void CodeCompleteAvailabilityPlatformName ()
 
void GatherGlobalCodeCompletions (CodeCompletionAllocator &Allocator, CodeCompletionTUInfo &CCTUInfo, SmallVectorImpl< CodeCompletionResult > &Results)
 
- Public Member Functions inherited from clang::SemaBase
 SemaBase (Sema &S)
 
ASTContextgetASTContext () const
 
DiagnosticsEnginegetDiagnostics () const
 
const LangOptionsgetLangOpts () const
 
void addFDToReachableFromSyclDevice (const FunctionDecl *Callee, const FunctionDecl *Caller)
 
bool isFDReachableFromSyclDevice (const FunctionDecl *Callee, const FunctionDecl *Caller)
 
SemaDiagnosticBuilder Diag (SourceLocation Loc, unsigned DiagID, bool DeferHint=false)
 Emit a diagnostic. More...
 
SemaDiagnosticBuilder Diag (SourceLocation Loc, const PartialDiagnostic &PD, bool DeferHint=false)
 Emit a partial diagnostic. More...
 

Public Attributes

CodeCompleteConsumerCodeCompleter
 Code-completion consumer. More...
 
- Public Attributes inherited from clang::SemaBase
SemaSemaRef
 

Detailed Description

Definition at line 37 of file SemaCodeCompletion.h.

Member Typedef Documentation

◆ DeclGroupPtrTy

Definition at line 42 of file SemaCodeCompletion.h.

◆ TemplateTy

Definition at line 41 of file SemaCodeCompletion.h.

Member Enumeration Documentation

◆ AttributeCompletion

Enumerator
Attribute 
Scope 
None 

Definition at line 117 of file SemaCodeCompletion.h.

◆ ParserCompletionContext

Describes the context in which code completion occurs.

Enumerator
PCC_Namespace 

Code completion occurs at top-level or namespace context.

PCC_Class 

Code completion occurs within a class, struct, or union.

PCC_ObjCInterface 

Code completion occurs within an Objective-C interface, protocol, or category.

PCC_ObjCImplementation 

Code completion occurs within an Objective-C implementation or category implementation.

PCC_ObjCInstanceVariableList 

Code completion occurs within the list of instance variables in an Objective-C interface, protocol, category, or implementation.

PCC_Template 

Code completion occurs following one or more template headers.

PCC_MemberTemplate 

Code completion occurs following one or more template headers within a class.

PCC_Expression 

Code completion occurs within an expression.

PCC_Statement 

Code completion occurs within a statement, which may also be an expression or a declaration.

PCC_ForInit 

Code completion occurs at the beginning of the initialization statement (or expression) in a for loop.

PCC_Condition 

Code completion occurs within the condition of an if, while, switch, or for statement.

PCC_RecoveryInFunction 

Code completion occurs within the body of a function on a recovery path, where we do not have a specific handle on our position in the grammar.

PCC_Type 

Code completion occurs where only a type is permitted.

PCC_ParenthesizedExpression 

Code completion occurs in a parenthesized expression, which might also be a type cast.

PCC_LocalDeclarationSpecifiers 

Code completion occurs within a sequence of declaration specifiers within a function, method, or block.

PCC_TopLevelOrExpression 

Code completion occurs at top-level in a REPL session.

Definition at line 48 of file SemaCodeCompletion.h.

Constructor & Destructor Documentation

◆ SemaCodeCompletion()

SemaCodeCompletion::SemaCodeCompletion ( Sema S,
CodeCompleteConsumer CompletionConsumer 
)

Definition at line 10350 of file SemaCodeComplete.cpp.

Member Function Documentation

◆ CodeCompleteAfterFunctionEquals()

void SemaCodeCompletion::CodeCompleteAfterFunctionEquals ( Declarator D)

Definition at line 7149 of file SemaCodeComplete.cpp.

References clang::CPlusPlus11.

◆ CodeCompleteAfterIf()

void SemaCodeCompletion::CodeCompleteAfterIf ( Scope S,
bool  IsBracedThen 
)

Definition at line 6627 of file SemaCodeComplete.cpp.

◆ CodeCompleteAttribute()

void SemaCodeCompletion::CodeCompleteAttribute ( AttributeCommonInfo::Syntax  Syntax,
AttributeCompletion  Completion = AttributeCompletion::Attribute,
const IdentifierInfo Scope = nullptr 
)

Definition at line 4601 of file SemaCodeComplete.cpp.

References clang::XRayInstrKind::None.

◆ CodeCompleteAvailabilityPlatformName()

void SemaCodeCompletion::CodeCompleteAvailabilityPlatformName ( )

Definition at line 10311 of file SemaCodeComplete.cpp.

◆ CodeCompleteBracketDeclarator()

void SemaCodeCompletion::CodeCompleteBracketDeclarator ( Scope S)

Definition at line 6008 of file SemaCodeComplete.cpp.

◆ CodeCompleteCase()

void SemaCodeCompletion::CodeCompleteCase ( Scope S)

Definition at line 6012 of file SemaCodeComplete.cpp.

◆ CodeCompleteConstructorInitializer()

void SemaCodeCompletion::CodeCompleteConstructorInitializer ( Decl Constructor,
ArrayRef< CXXCtorInitializer * >  Initializers 
)

Definition at line 6942 of file SemaCodeComplete.cpp.

References clang::Sema::AdjustDeclIfTemplate().

◆ CodeCompleteDeclSpec()

void SemaCodeCompletion::CodeCompleteDeclSpec ( Scope S,
DeclSpec DS,
bool  AllowNonIdentifiers,
bool  AllowNestedNameSpecifiers 
)

Definition at line 4514 of file SemaCodeComplete.cpp.

◆ CodeCompleteDesignator()

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 6577 of file SemaCodeComplete.cpp.

References clang::CodeCompletionContext::CCC_DotMemberAccess, getAsRecordDecl(), getDesignatedType(), and clang::QualType::isNull().

◆ CodeCompleteExpression() [1/2]

void SemaCodeCompletion::CodeCompleteExpression ( Scope S,
const CodeCompleteExpressionData Data 
)

Perform code-completion in an expression context when we know what type we're looking for.

Definition at line 4852 of file SemaCodeComplete.cpp.

Referenced by clang::Parser::ParseAssignmentExpression(), and clang::Parser::ParseConditionalExpression().

◆ CodeCompleteExpression() [2/2]

void SemaCodeCompletion::CodeCompleteExpression ( Scope S,
QualType  PreferredType,
bool  IsParenthesized = false 
)

Definition at line 4925 of file SemaCodeComplete.cpp.

◆ CodeCompleteFunctionQualifiers()

void SemaCodeCompletion::CodeCompleteFunctionQualifiers ( DeclSpec DS,
Declarator D,
const VirtSpecifiers VS = nullptr 
)

Definition at line 5985 of file SemaCodeComplete.cpp.

◆ CodeCompleteIncludedFile()

void SemaCodeCompletion::CodeCompleteIncludedFile ( llvm::StringRef  Dir,
bool  IsAngled 
)

Definition at line 10162 of file SemaCodeComplete.cpp.

◆ CodeCompleteInitializer()

void SemaCodeCompletion::CodeCompleteInitializer ( Scope S,
Decl D 
)

Definition at line 6612 of file SemaCodeComplete.cpp.

◆ CodeCompleteInPreprocessorConditionalExclusion()

void SemaCodeCompletion::CodeCompleteInPreprocessorConditionalExclusion ( Scope S)

Definition at line 10090 of file SemaCodeComplete.cpp.

◆ CodeCompleteLambdaIntroducer()

void SemaCodeCompletion::CodeCompleteLambdaIntroducer ( Scope S,
LambdaIntroducer Intro,
bool  AfterAmpersand 
)

Definition at line 7105 of file SemaCodeComplete.cpp.

◆ CodeCompleteMemberReferenceExpr()

void SemaCodeCompletion::CodeCompleteMemberReferenceExpr ( Scope S,
Expr Base,
Expr OtherOpBase,
SourceLocation  OpLoc,
bool  IsArrow,
bool  IsBaseExprStatement,
QualType  PreferredType 
)

Definition at line 5723 of file SemaCodeComplete.cpp.

◆ CodeCompleteModuleImport()

void SemaCodeCompletion::CodeCompleteModuleImport ( SourceLocation  ImportLoc,
ModuleIdPath  Path 
)

Definition at line 4372 of file SemaCodeComplete.cpp.

◆ CodeCompleteNamespaceAliasDecl()

void SemaCodeCompletion::CodeCompleteNamespaceAliasDecl ( Scope S)

Definition at line 6890 of file SemaCodeComplete.cpp.

◆ CodeCompleteNamespaceDecl()

void SemaCodeCompletion::CodeCompleteNamespaceDecl ( Scope S)

Definition at line 6841 of file SemaCodeComplete.cpp.

◆ CodeCompleteNaturalLanguage()

void SemaCodeCompletion::CodeCompleteNaturalLanguage ( )

◆ CodeCompleteObjCAtDirective()

void SemaCodeCompletion::CodeCompleteObjCAtDirective ( Scope S)

Definition at line 7294 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCAtExpression()

void SemaCodeCompletion::CodeCompleteObjCAtExpression ( Scope S)

Definition at line 7457 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCAtStatement()

void SemaCodeCompletion::CodeCompleteObjCAtStatement ( Scope S)

Definition at line 7444 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCAtVisibility()

void SemaCodeCompletion::CodeCompleteObjCAtVisibility ( Scope S)

Definition at line 7432 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCClassForwardDecl()

void SemaCodeCompletion::CodeCompleteObjCClassForwardDecl ( Scope S)

Definition at line 8646 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCClassMessage()

void SemaCodeCompletion::CodeCompleteObjCClassMessage ( Scope S,
ParsedType  Receiver,
ArrayRef< const IdentifierInfo * >  SelIdents,
bool  AtArgumentExpression,
bool  IsSuper = false 
)

Definition at line 8270 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCClassPropertyRefExpr()

void SemaCodeCompletion::CodeCompleteObjCClassPropertyRefExpr ( Scope S,
const IdentifierInfo ClassName,
SourceLocation  ClassNameLoc,
bool  IsBaseExprStatement 
)

Definition at line 5882 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCForCollection()

void SemaCodeCompletion::CodeCompleteObjCForCollection ( Scope S,
DeclGroupPtrTy  IterationVar 
)

Definition at line 8466 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCImplementationCategory()

void SemaCodeCompletion::CodeCompleteObjCImplementationCategory ( Scope S,
IdentifierInfo ClassName,
SourceLocation  ClassNameLoc 
)

Definition at line 8745 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCImplementationDecl()

void SemaCodeCompletion::CodeCompleteObjCImplementationDecl ( Scope S)

Definition at line 8691 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCInstanceMessage()

void SemaCodeCompletion::CodeCompleteObjCInstanceMessage ( Scope S,
Expr Receiver,
ArrayRef< const IdentifierInfo * >  SelIdents,
bool  AtArgumentExpression,
ObjCInterfaceDecl Super = nullptr 
)

Definition at line 8305 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCInterfaceCategory()

void SemaCodeCompletion::CodeCompleteObjCInterfaceCategory ( Scope S,
IdentifierInfo ClassName,
SourceLocation  ClassNameLoc 
)

Definition at line 8710 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCInterfaceDecl()

void SemaCodeCompletion::CodeCompleteObjCInterfaceDecl ( Scope S)

Definition at line 8627 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCMessageReceiver()

void SemaCodeCompletion::CodeCompleteObjCMessageReceiver ( Scope S)

Definition at line 8058 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCMethodDecl()

void SemaCodeCompletion::CodeCompleteObjCMethodDecl ( Scope S,
std::optional< bool IsInstanceMethod,
ParsedType  ReturnType 
)

Definition at line 9653 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCMethodDeclSelector()

void SemaCodeCompletion::CodeCompleteObjCMethodDeclSelector ( Scope S,
bool  IsInstanceMethod,
bool  AtParameterName,
ParsedType  ReturnType,
ArrayRef< const IdentifierInfo * >  SelIdents 
)

Definition at line 9831 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPassingType()

void SemaCodeCompletion::CodeCompleteObjCPassingType ( Scope S,
ObjCDeclSpec DS,
bool  IsParameter 
)

Definition at line 7792 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPropertyDefinition()

void SemaCodeCompletion::CodeCompleteObjCPropertyDefinition ( Scope S)

Definition at line 8786 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPropertyFlags()

void SemaCodeCompletion::CodeCompleteObjCPropertyFlags ( Scope S,
ObjCDeclSpec ODS 
)

Definition at line 7502 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPropertyGetter()

void SemaCodeCompletion::CodeCompleteObjCPropertyGetter ( Scope S)

Definition at line 7733 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPropertySetter()

void SemaCodeCompletion::CodeCompleteObjCPropertySetter ( Scope S)

Definition at line 7762 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCPropertySynthesizeIvar()

void SemaCodeCompletion::CodeCompleteObjCPropertySynthesizeIvar ( Scope S,
IdentifierInfo PropertyName 
)

Definition at line 8824 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCProtocolDecl()

void SemaCodeCompletion::CodeCompleteObjCProtocolDecl ( Scope S)

Definition at line 8588 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCProtocolReferences()

void SemaCodeCompletion::CodeCompleteObjCProtocolReferences ( ArrayRef< IdentifierLocPair Protocols)

Definition at line 8559 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCSelector()

void SemaCodeCompletion::CodeCompleteObjCSelector ( Scope S,
ArrayRef< const IdentifierInfo * >  SelIdents 
)

Definition at line 8482 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCSuperclass()

void SemaCodeCompletion::CodeCompleteObjCSuperclass ( Scope S,
IdentifierInfo ClassName,
SourceLocation  ClassNameLoc 
)

Definition at line 8665 of file SemaCodeComplete.cpp.

◆ CodeCompleteObjCSuperMessage()

void SemaCodeCompletion::CodeCompleteObjCSuperMessage ( Scope S,
SourceLocation  SuperLoc,
ArrayRef< const IdentifierInfo * >  SelIdents,
bool  AtArgumentExpression 
)

Definition at line 8097 of file SemaCodeComplete.cpp.

◆ CodeCompleteOperatorName()

void SemaCodeCompletion::CodeCompleteOperatorName ( Scope S)

Definition at line 6908 of file SemaCodeComplete.cpp.

◆ CodeCompleteOrdinaryName()

void SemaCodeCompletion::CodeCompleteOrdinaryName ( Scope S,
SemaCodeCompletion::ParserCompletionContext  CompletionContext 
)

Definition at line 4418 of file SemaCodeComplete.cpp.

◆ CodeCompletePostfixExpression()

void SemaCodeCompletion::CodeCompletePostfixExpression ( Scope S,
ExprResult  LHS,
QualType  PreferredType 
)

Definition at line 4932 of file SemaCodeComplete.cpp.

◆ CodeCompletePreprocessorDirective()

void SemaCodeCompletion::CodeCompletePreprocessorDirective ( bool  InConditional)

Definition at line 9919 of file SemaCodeComplete.cpp.

◆ CodeCompletePreprocessorExpression()

void SemaCodeCompletion::CodeCompletePreprocessorExpression ( )

Definition at line 10125 of file SemaCodeComplete.cpp.

◆ CodeCompletePreprocessorMacroArgument()

void SemaCodeCompletion::CodeCompletePreprocessorMacroArgument ( Scope S,
IdentifierInfo Macro,
MacroInfo MacroInfo,
unsigned  Argument 
)

Definition at line 10150 of file SemaCodeComplete.cpp.

◆ CodeCompletePreprocessorMacroName()

void SemaCodeCompletion::CodeCompletePreprocessorMacroName ( bool  IsDefinition)

Definition at line 10097 of file SemaCodeComplete.cpp.

◆ CodeCompleteQualifiedId()

void SemaCodeCompletion::CodeCompleteQualifiedId ( Scope S,
CXXScopeSpec SS,
bool  EnteringContext,
bool  IsUsingDeclaration,
QualType  BaseType,
QualType  PreferredType 
)

Definition at line 6692 of file SemaCodeComplete.cpp.

◆ CodeCompleteTag()

void SemaCodeCompletion::CodeCompleteTag ( Scope S,
unsigned  TagSpec 
)

Definition at line 5907 of file SemaCodeComplete.cpp.

◆ CodeCompleteTypeQualifiers()

void SemaCodeCompletion::CodeCompleteTypeQualifiers ( DeclSpec DS)

Definition at line 5973 of file SemaCodeComplete.cpp.

◆ CodeCompleteUsing()

void SemaCodeCompletion::CodeCompleteUsing ( Scope S)

Definition at line 6789 of file SemaCodeComplete.cpp.

◆ CodeCompleteUsingDirective()

void SemaCodeCompletion::CodeCompleteUsingDirective ( Scope S)

Definition at line 6820 of file SemaCodeComplete.cpp.

◆ GatherGlobalCodeCompletions()

void SemaCodeCompletion::GatherGlobalCodeCompletions ( CodeCompletionAllocator Allocator,
CodeCompletionTUInfo CCTUInfo,
SmallVectorImpl< CodeCompletionResult > &  Results 
)

Definition at line 10328 of file SemaCodeComplete.cpp.

◆ ProduceCallSignatureHelp()

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 6221 of file SemaCodeComplete.cpp.

References anyNullArguments(), and clang::Expr::isTypeDependent().

◆ ProduceConstructorSignatureHelp()

QualType SemaCodeCompletion::ProduceConstructorSignatureHelp ( QualType  Type,
SourceLocation  Loc,
ArrayRef< Expr * >  Args,
SourceLocation  OpenParLoc,
bool  Braced 
)

Definition at line 6401 of file SemaCodeComplete.cpp.

◆ ProduceCtorInitMemberSignatureHelp()

QualType SemaCodeCompletion::ProduceCtorInitMemberSignatureHelp ( Decl ConstructorDecl,
CXXScopeSpec  SS,
ParsedType  TemplateTypeTy,
ArrayRef< Expr * >  ArgExprs,
IdentifierInfo II,
SourceLocation  OpenParLoc,
bool  Braced 
)

Definition at line 6478 of file SemaCodeComplete.cpp.

References clang::Sema::tryLookupCtorInitMemberDecl().

◆ ProduceTemplateArgumentSignatureHelp()

QualType SemaCodeCompletion::ProduceTemplateArgumentSignatureHelp ( TemplateTy  ParsedTemplate,
ArrayRef< ParsedTemplateArgument Args,
SourceLocation  LAngleLoc 
)

Definition at line 6520 of file SemaCodeComplete.cpp.

Member Data Documentation

◆ CodeCompleter

CodeCompleteConsumer* clang::SemaCodeCompletion::CodeCompleter

Code-completion consumer.

Definition at line 45 of file SemaCodeCompletion.h.

Referenced by ProduceSignatureHelp().


The documentation for this class was generated from the following files: