clang-tools 20.0.0git
|
Contains the metadata for the mixability result between two types, independently of which parameters they were calculated from. More...
Public Member Functions | |
MixData (MixFlags Flags) | |
MixData (MixFlags Flags, QualType CommonType) | |
MixData (MixFlags Flags, ConversionSequence Conv) | |
MixData (MixFlags Flags, ConversionSequence LTR, ConversionSequence RTL) | |
MixData (MixFlags Flags, QualType CommonType, ConversionSequence LTR, ConversionSequence RTL) | |
void | sanitize () |
bool | isValid () const |
bool | indicatesMixability () const |
MixData | operator| (MixFlags EnableFlags) const |
Add the specified flag bits to the flags. | |
MixData & | operator|= (MixFlags EnableFlags) |
Add the specified flag bits to the flags. | |
template<typename F > | |
MixData | withCommonTypeTransformed (const F &Func) const |
Public Attributes | |
MixFlags | Flags = MixFlags::Invalid |
The flag bits of the mix indicating what language features allow for it. | |
QualType | CommonType |
A potentially calculated common underlying type after desugaring, that both sides of the mix can originate from. | |
ConversionSequence | Conversion |
The steps an implicit conversion performs to get from one type to the other. | |
ConversionSequence | ConversionRTL |
bool | CreatedFromOneWayConversion = false |
True if the MixData was specifically created with only a one-way conversion modelled. | |
Contains the metadata for the mixability result between two types, independently of which parameters they were calculated from.
Definition at line 389 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 405 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 406 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 408 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 410 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 412 of file EasilySwappableParametersCheck.cpp.
|
inline |
Definition at line 464 of file EasilySwappableParametersCheck.cpp.
References Flags, and clang::tidy::bugprone::model::None.
Referenced by clang::tidy::bugprone::model::approximateImplicitConversion(), clang::tidy::bugprone::model::calculateMixability(), and clang::tidy::bugprone::model::Mix::mixable().
|
inline |
Definition at line 462 of file EasilySwappableParametersCheck.cpp.
References Flags, and clang::tidy::bugprone::model::None.
Referenced by clang::tidy::bugprone::model::Mix::flagsValid().
Add the specified flag bits to the flags.
Definition at line 467 of file EasilySwappableParametersCheck.cpp.
References CommonType, Conversion, ConversionRTL, CreatedFromOneWayConversion, Flags, and M.
Add the specified flag bits to the flags.
Definition at line 477 of file EasilySwappableParametersCheck.cpp.
References Flags.
|
inline |
Definition at line 417 of file EasilySwappableParametersCheck.cpp.
References clang::tidy::bugprone::model::Canonical, Conversion, ConversionRTL, CreatedFromOneWayConversion, Flags, clang::tidy::bugprone::model::hasFlag(), clang::tidy::bugprone::model::ImplicitConversion, clang::tidy::bugprone::model::Invalid, clang::tidy::bugprone::model::None, clang::tidy::bugprone::model::Trivial, and clang::tidy::bugprone::model::WorkaroundDisableCanonicalEquivalence.
Referenced by clang::tidy::bugprone::model::approximateStandardConversionSequence(), clang::tidy::bugprone::model::calculateMixability(), and clang::tidy::bugprone::model::Mix::sanitize().
|
inline |
Definition at line 482 of file EasilySwappableParametersCheck.cpp.
References CommonType, Conversion, ConversionRTL, CreatedFromOneWayConversion, Flags, and M.
Referenced by clang::tidy::bugprone::model::calculateMixability().
QualType clang::tidy::bugprone::model::MixData::CommonType |
A potentially calculated common underlying type after desugaring, that both sides of the mix can originate from.
Definition at line 395 of file EasilySwappableParametersCheck.cpp.
Referenced by clang::tidy::bugprone::model::Mix::commonUnderlyingType(), operator|(), and withCommonTypeTransformed().
ConversionSequence clang::tidy::bugprone::model::MixData::Conversion |
The steps an implicit conversion performs to get from one type to the other.
Definition at line 399 of file EasilySwappableParametersCheck.cpp.
Referenced by clang::tidy::bugprone::model::approximateImplicitConversion(), clang::tidy::bugprone::model::calculateMixability(), clang::tidy::bugprone::model::Mix::leftToRightConversionSequence(), operator|(), sanitize(), and withCommonTypeTransformed().
ConversionSequence clang::tidy::bugprone::model::MixData::ConversionRTL |
Definition at line 399 of file EasilySwappableParametersCheck.cpp.
Referenced by operator|(), clang::tidy::bugprone::model::Mix::rightToLeftConversionSequence(), sanitize(), and withCommonTypeTransformed().
bool clang::tidy::bugprone::model::MixData::CreatedFromOneWayConversion = false |
True if the MixData was specifically created with only a one-way conversion modelled.
Definition at line 403 of file EasilySwappableParametersCheck.cpp.
Referenced by operator|(), sanitize(), and withCommonTypeTransformed().
MixFlags clang::tidy::bugprone::model::MixData::Flags = MixFlags::Invalid |
The flag bits of the mix indicating what language features allow for it.
Definition at line 391 of file EasilySwappableParametersCheck.cpp.
Referenced by clang::tidy::bugprone::model::approximateStandardConversionSequence(), clang::tidy::bugprone::model::calculateMixability(), clang::tidy::bugprone::model::Mix::flags(), indicatesMixability(), isValid(), operator|(), operator|=(), sanitize(), and withCommonTypeTransformed().