clang-tools  14.0.0git
Public Attributes | List of all members
clang::clangd::Diagnostic Struct Reference

#include <Protocol.h>

Collaboration diagram for clang::clangd::Diagnostic:
Collaboration graph
[legend]

Public Attributes

Range range
 The range at which the message applies. More...
 
int severity = 0
 The diagnostic's severity. More...
 
std::string code
 The diagnostic's code. Can be omitted. More...
 
std::string source
 A human-readable string describing the source of this diagnostic, e.g. More...
 
std::string message
 The diagnostic's message. More...
 
llvm::SmallVector< DiagnosticTag, 1 > tags
 Additional metadata about the diagnostic. More...
 
llvm::Optional< std::vector< DiagnosticRelatedInformation > > relatedInformation
 An array of related diagnostic information, e.g. More...
 
llvm::Optional< std::string > category
 The diagnostic's category. More...
 
llvm::Optional< std::vector< CodeAction > > codeActions
 Clangd extension: code actions related to this diagnostic. More...
 
llvm::json::Object data
 A data entry field that is preserved between a textDocument/publishDiagnostics notification andtextDocument/codeAction request. More...
 

Detailed Description

Definition at line 829 of file Protocol.h.

Member Data Documentation

◆ category

llvm::Optional<std::string> clang::clangd::Diagnostic::category

The diagnostic's category.

Can be omitted. An LSP extension that's used to send the name of the category over to the client. The category typically describes the compilation stage during which the issue was produced, e.g. "Semantic Issue" or "Parse Issue".

Definition at line 858 of file Protocol.h.

◆ code

std::string clang::clangd::Diagnostic::code

The diagnostic's code. Can be omitted.

Definition at line 838 of file Protocol.h.

◆ codeActions

llvm::Optional<std::vector<CodeAction> > clang::clangd::Diagnostic::codeActions

Clangd extension: code actions related to this diagnostic.

Only with capability textDocument.publishDiagnostics.codeActionsInline. (These actions can also be obtained using textDocument/codeAction).

Definition at line 863 of file Protocol.h.

◆ data

llvm::json::Object clang::clangd::Diagnostic::data

A data entry field that is preserved between a textDocument/publishDiagnostics notification andtextDocument/codeAction request.

Mutating users should associate their data with a unique key they can use to retrieve later on.

Definition at line 870 of file Protocol.h.

◆ message

std::string clang::clangd::Diagnostic::message

The diagnostic's message.

Definition at line 845 of file Protocol.h.

Referenced by clang::clangd::LSPDiagnosticCompare::operator()().

◆ range

Range clang::clangd::Diagnostic::range

The range at which the message applies.

Definition at line 831 of file Protocol.h.

Referenced by clang::clangd::LSPDiagnosticCompare::operator()().

◆ relatedInformation

llvm::Optional<std::vector<DiagnosticRelatedInformation> > clang::clangd::Diagnostic::relatedInformation

An array of related diagnostic information, e.g.

when symbol-names within a scope collide all definitions can be marked via this property.

Definition at line 852 of file Protocol.h.

◆ severity

int clang::clangd::Diagnostic::severity = 0

The diagnostic's severity.

Can be omitted. If omitted it is up to the client to interpret diagnostics as error, warning, info or hint.

Definition at line 835 of file Protocol.h.

◆ source

std::string clang::clangd::Diagnostic::source

A human-readable string describing the source of this diagnostic, e.g.

'typescript' or 'super lint'.

Definition at line 842 of file Protocol.h.

◆ tags

llvm::SmallVector<DiagnosticTag, 1> clang::clangd::Diagnostic::tags

Additional metadata about the diagnostic.

Definition at line 848 of file Protocol.h.


The documentation for this struct was generated from the following file: