clang 20.0.0git
Classes | Public Types | Public Member Functions | Friends | List of all members
clang::CodeCompletionString Class Reference

A "string" used to describe how code completion can be performed for an entity. More...

#include "clang/Sema/CodeCompleteConsumer.h"

Classes

struct  Chunk
 One piece of the code completion string. More...
 

Public Types

enum  ChunkKind {
  CK_TypedText , CK_Text , CK_Optional , CK_Placeholder ,
  CK_Informative , CK_ResultType , CK_CurrentParameter , CK_LeftParen ,
  CK_RightParen , CK_LeftBracket , CK_RightBracket , CK_LeftBrace ,
  CK_RightBrace , CK_LeftAngle , CK_RightAngle , CK_Comma ,
  CK_Colon , CK_SemiColon , CK_Equal , CK_HorizontalSpace ,
  CK_VerticalSpace
}
 The different kinds of "chunks" that can occur within a code completion string. More...
 
using iterator = const Chunk *
 

Public Member Functions

 CodeCompletionString (const CodeCompletionString &)=delete
 
CodeCompletionStringoperator= (const CodeCompletionString &)=delete
 
iterator begin () const
 
iterator end () const
 
bool empty () const
 
unsigned size () const
 
const Chunkoperator[] (unsigned I) const
 
const char * getTypedText () const
 Returns the text in the first TypedText chunk.
 
std::string getAllTypedText () const
 Returns the combined text from all TypedText chunks.
 
unsigned getPriority () const
 Retrieve the priority of this code completion result.
 
unsigned getAvailability () const
 Retrieve the availability of this code completion result.
 
unsigned getAnnotationCount () const
 Retrieve the number of annotations for this code completion result.
 
const char * getAnnotation (unsigned AnnotationNr) const
 Retrieve the annotation string specified by AnnotationNr.
 
StringRef getParentContextName () const
 Retrieve the name of the parent context.
 
const char * getBriefComment () const
 
std::string getAsString () const
 Retrieve a string representation of the code completion string, which is mainly useful for debugging.
 

Friends

class CodeCompletionBuilder
 
class CodeCompletionResult
 

Detailed Description

A "string" used to describe how code completion can be performed for an entity.

A code completion string typically shows how a particular entity can be used. For example, the code completion string for a function would show the syntax to call it, including the parentheses, placeholders for the arguments, etc.

Definition at line 450 of file CodeCompleteConsumer.h.

Member Typedef Documentation

◆ iterator

Definition at line 606 of file CodeCompleteConsumer.h.

Member Enumeration Documentation

◆ ChunkKind

The different kinds of "chunks" that can occur within a code completion string.

Enumerator
CK_TypedText 

The piece of text that the user is expected to type to match the code-completion string, typically a keyword or the name of a declarator or macro.

CK_Text 

A piece of text that should be placed in the buffer, e.g., parentheses or a comma in a function call.

CK_Optional 

A code completion string that is entirely optional.

For example, an optional code completion string that describes the default arguments in a function call.

CK_Placeholder 

A string that acts as a placeholder for, e.g., a function call argument.

CK_Informative 

A piece of text that describes something about the result but should not be inserted into the buffer.

CK_ResultType 

A piece of text that describes the type of an entity or, for functions and methods, the return type.

CK_CurrentParameter 

A piece of text that describes the parameter that corresponds to the code-completion location within a function call, message send, macro invocation, etc.

CK_LeftParen 

A left parenthesis ('(').

CK_RightParen 

A right parenthesis (')').

CK_LeftBracket 

A left bracket ('[').

CK_RightBracket 

A right bracket (']').

CK_LeftBrace 

A left brace ('{').

CK_RightBrace 

A right brace ('}').

CK_LeftAngle 

A left angle bracket ('<').

CK_RightAngle 

A right angle bracket ('>').

CK_Comma 

A comma separator (',').

CK_Colon 

A colon (':').

CK_SemiColon 

A semicolon (';').

CK_Equal 

An '=' sign.

CK_HorizontalSpace 

Horizontal whitespace (' ').

CK_VerticalSpace 

Vertical whitespace ('\n' or '\r\n', depending on the platform).

Definition at line 454 of file CodeCompleteConsumer.h.

Constructor & Destructor Documentation

◆ CodeCompletionString()

clang::CodeCompletionString::CodeCompletionString ( const CodeCompletionString )
delete

Member Function Documentation

◆ begin()

iterator clang::CodeCompletionString::begin ( ) const
inline

Definition at line 608 of file CodeCompleteConsumer.h.

Referenced by end(), and operator[]().

◆ empty()

bool clang::CodeCompletionString::empty ( ) const
inline

Definition at line 610 of file CodeCompleteConsumer.h.

◆ end()

iterator clang::CodeCompletionString::end ( ) const
inline

Definition at line 609 of file CodeCompleteConsumer.h.

References begin().

Referenced by getAnnotation().

◆ getAllTypedText()

std::string CodeCompletionString::getAllTypedText ( ) const

Returns the combined text from all TypedText chunks.

Definition at line 355 of file CodeCompleteConsumer.cpp.

References clang::C, and CK_TypedText.

◆ getAnnotation()

const char * CodeCompletionString::getAnnotation ( unsigned  AnnotationNr) const

Retrieve the annotation string specified by AnnotationNr.

Definition at line 313 of file CodeCompleteConsumer.cpp.

References end().

◆ getAnnotationCount()

unsigned CodeCompletionString::getAnnotationCount ( ) const

Retrieve the number of annotations for this code completion result.

Definition at line 309 of file CodeCompleteConsumer.cpp.

◆ getAsString()

std::string CodeCompletionString::getAsString ( ) const

Retrieve a string representation of the code completion string, which is mainly useful for debugging.

Definition at line 320 of file CodeCompleteConsumer.cpp.

References clang::C, CK_CurrentParameter, CK_Informative, CK_Optional, CK_Placeholder, CK_ResultType, and clang::Result.

◆ getAvailability()

unsigned clang::CodeCompletionString::getAvailability ( ) const
inline

Retrieve the availability of this code completion result.

Definition at line 628 of file CodeCompleteConsumer.h.

◆ getBriefComment()

const char * clang::CodeCompletionString::getBriefComment ( ) const
inline

Definition at line 641 of file CodeCompleteConsumer.h.

◆ getParentContextName()

StringRef clang::CodeCompletionString::getParentContextName ( ) const
inline

Retrieve the name of the parent context.

Definition at line 637 of file CodeCompleteConsumer.h.

◆ getPriority()

unsigned clang::CodeCompletionString::getPriority ( ) const
inline

Retrieve the priority of this code completion result.

Definition at line 625 of file CodeCompleteConsumer.h.

References Priority.

◆ getTypedText()

const char * CodeCompletionString::getTypedText ( ) const

Returns the text in the first TypedText chunk.

Definition at line 347 of file CodeCompleteConsumer.cpp.

References clang::C, and CK_TypedText.

◆ operator=()

CodeCompletionString & clang::CodeCompletionString::operator= ( const CodeCompletionString )
delete

◆ operator[]()

const Chunk & clang::CodeCompletionString::operator[] ( unsigned  I) const
inline

Definition at line 613 of file CodeCompleteConsumer.h.

References begin(), and size().

◆ size()

unsigned clang::CodeCompletionString::size ( ) const
inline

Friends And Related Function Documentation

◆ CodeCompletionBuilder

friend class CodeCompletionBuilder
friend

Definition at line 572 of file CodeCompleteConsumer.h.

◆ CodeCompletionResult

friend class CodeCompletionResult
friend

Definition at line 573 of file CodeCompleteConsumer.h.


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