clang API Documentation
Base class for callback objects used by Sema::CorrectTypo to check the validity of a potential typo correction. More...
#include <TypoCorrection.h>
Public Member Functions | |
CorrectionCandidateCallback (IdentifierInfo *Typo=nullptr, NestedNameSpecifier *TypoNNS=nullptr) | |
virtual | ~CorrectionCandidateCallback () |
virtual bool | ValidateCandidate (const TypoCorrection &candidate) |
Simple predicate used by the default RankCandidate to determine whether to return an edit distance of 0 or InvalidDistance. This can be overrided by validators that only need to determine if a candidate is viable, without ranking potentially viable candidates. Only ValidateCandidate or RankCandidate need to be overriden by a callback wishing to check the viability of correction candidates. The default predicate always returns true if the candidate is not a type name or keyword, true for types if WantTypeSpecifiers is true, and true for keywords if WantTypeSpecifiers, WantExpressionKeywords, WantCXXNamedCasts, WantRemainingKeywords, or WantObjCSuper is true. | |
virtual unsigned | RankCandidate (const TypoCorrection &candidate) |
Method used by Sema::CorrectTypo to assign an "edit distance" rank to a candidate (where a lower value represents a better candidate), or returning InvalidDistance if the candidate is not at all viable. For validation callbacks that only need to determine if a candidate is viable, the default RankCandidate returns either 0 or InvalidDistance depending whether ValidateCandidate returns true or false. | |
void | setTypoName (IdentifierInfo *II) |
void | setTypoNNS (NestedNameSpecifier *NNS) |
Public Attributes | |
bool | WantTypeSpecifiers |
bool | WantExpressionKeywords |
bool | WantCXXNamedCasts |
bool | WantFunctionLikeCasts |
bool | WantRemainingKeywords |
bool | WantObjCSuper |
bool | IsObjCIvarLookup |
bool | IsAddressOfOperand |
Static Public Attributes | |
static const unsigned | InvalidDistance = TypoCorrection::InvalidDistance |
Protected Member Functions | |
bool | MatchesTypo (const TypoCorrection &candidate) |
Protected Attributes | |
IdentifierInfo * | Typo |
NestedNameSpecifier * | TypoNNS |
Base class for callback objects used by Sema::CorrectTypo to check the validity of a potential typo correction.
Definition at line 247 of file TypoCorrection.h.
clang::CorrectionCandidateCallback::CorrectionCandidateCallback | ( | IdentifierInfo * | Typo = nullptr , |
NestedNameSpecifier * | TypoNNS = nullptr |
||
) | [inline, explicit] |
Definition at line 251 of file TypoCorrection.h.
virtual clang::CorrectionCandidateCallback::~CorrectionCandidateCallback | ( | ) | [inline, virtual] |
Definition at line 259 of file TypoCorrection.h.
bool clang::CorrectionCandidateCallback::MatchesTypo | ( | const TypoCorrection & | candidate | ) | [inline, protected] |
Definition at line 303 of file TypoCorrection.h.
References clang::TypoCorrection::getCorrectionAsIdentifierInfo(), clang::TypoCorrection::getCorrectionSpecifier(), clang::TypoCorrection::isResolved(), clang::TypoCorrection::requiresImport(), Typo, and TypoNNS.
Referenced by RankCandidate().
virtual unsigned clang::CorrectionCandidateCallback::RankCandidate | ( | const TypoCorrection & | candidate | ) | [inline, virtual] |
Method used by Sema::CorrectTypo to assign an "edit distance" rank to a candidate (where a lower value represents a better candidate), or returning InvalidDistance if the candidate is not at all viable. For validation callbacks that only need to determine if a candidate is viable, the default RankCandidate returns either 0 or InvalidDistance depending whether ValidateCandidate returns true or false.
Definition at line 279 of file TypoCorrection.h.
References InvalidDistance, MatchesTypo(), and ValidateCandidate().
Referenced by isCandidateViable().
void clang::CorrectionCandidateCallback::setTypoName | ( | IdentifierInfo * | II | ) | [inline] |
Definition at line 285 of file TypoCorrection.h.
References Typo.
void clang::CorrectionCandidateCallback::setTypoNNS | ( | NestedNameSpecifier * | NNS | ) | [inline] |
Definition at line 286 of file TypoCorrection.h.
References TypoNNS.
bool CorrectionCandidateCallback::ValidateCandidate | ( | const TypoCorrection & | candidate | ) | [virtual] |
Simple predicate used by the default RankCandidate to determine whether to return an edit distance of 0 or InvalidDistance. This can be overrided by validators that only need to determine if a candidate is viable, without ranking potentially viable candidates. Only ValidateCandidate or RankCandidate need to be overriden by a callback wishing to check the viability of correction candidates. The default predicate always returns true if the candidate is not a type name or keyword, true for types if WantTypeSpecifiers is true, and true for keywords if WantTypeSpecifiers, WantExpressionKeywords, WantCXXNamedCasts, WantRemainingKeywords, or WantObjCSuper is true.
Reimplemented in clang::NoTypoCorrectionCCC, clang::FunctionCallFilterCCC, and clang::DeclFilterCCC< C >.
Definition at line 4408 of file SemaLookup.cpp.
References IsAddressOfOperand, clang::TypoCorrection::isKeyword(), clang::TypoCorrection::isResolved(), WantCXXNamedCasts, WantExpressionKeywords, WantObjCSuper, WantRemainingKeywords, and WantTypeSpecifiers.
Referenced by RankCandidate().
const unsigned clang::CorrectionCandidateCallback::InvalidDistance = TypoCorrection::InvalidDistance [static] |
Definition at line 249 of file TypoCorrection.h.
Referenced by RankCandidate().
Definition at line 300 of file TypoCorrection.h.
Referenced by ValidateCandidate().
Definition at line 299 of file TypoCorrection.h.
IdentifierInfo* clang::CorrectionCandidateCallback::Typo [protected] |
Definition at line 311 of file TypoCorrection.h.
Referenced by MatchesTypo(), and setTypoName().
Definition at line 312 of file TypoCorrection.h.
Referenced by MatchesTypo(), and setTypoNNS().
Definition at line 293 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), clang::NoTypoCorrectionCCC::NoTypoCorrectionCCC(), and ValidateCandidate().
Definition at line 292 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), clang::NoTypoCorrectionCCC::NoTypoCorrectionCCC(), and ValidateCandidate().
Definition at line 294 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), clang::FunctionCallFilterCCC::FunctionCallFilterCCC(), and clang::NoTypoCorrectionCCC::NoTypoCorrectionCCC().
Definition at line 296 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), and ValidateCandidate().
Definition at line 295 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), clang::FunctionCallFilterCCC::FunctionCallFilterCCC(), clang::NoTypoCorrectionCCC::NoTypoCorrectionCCC(), and ValidateCandidate().
Definition at line 291 of file TypoCorrection.h.
Referenced by AddKeywordsToConsumer(), clang::FunctionCallFilterCCC::FunctionCallFilterCCC(), clang::NoTypoCorrectionCCC::NoTypoCorrectionCCC(), and ValidateCandidate().