clang
9.0.0
|
#include "clang/AST/ComparisonCategories.h"
Classes | |
struct | ValueInfo |
Public Member Functions | |
ComparisonCategoryInfo (const ASTContext &Ctx, CXXRecordDecl *RD, ComparisonCategoryType Kind) | |
QualType | getType () const |
const ValueInfo * | getValueInfo (ComparisonCategoryResult ValueKind) const |
bool | isEquality () const |
True iff the comparison category is an equality comparison. More... | |
bool | isOrdered () const |
True iff the comparison category is a relational comparison. More... | |
bool | isStrong () const |
True iff the comparison is "strong". More... | |
bool | isPartial () const |
True iff the comparison is not totally ordered. More... | |
ComparisonCategoryResult | makeWeakResult (ComparisonCategoryResult Res) const |
Converts the specified result kind into the the correct result kind for this category. More... | |
const ValueInfo * | getEqualOrEquiv () const |
const ValueInfo * | getNonequalOrNonequiv () const |
const ValueInfo * | getLess () const |
const ValueInfo * | getGreater () const |
const ValueInfo * | getUnordered () const |
Public Attributes | |
CXXRecordDecl * | Record = nullptr |
The declaration for the comparison category type from the standard library. More... | |
ComparisonCategoryType | Kind |
The Kind of the comparison category type. More... | |
Friends | |
class | ComparisonCategories |
class | Sema |
Definition at line 67 of file ComparisonCategories.h.
|
inline |
Definition at line 72 of file ComparisonCategories.h.
|
inline |
Definition at line 165 of file ComparisonCategories.h.
|
inline |
Definition at line 176 of file ComparisonCategories.h.
|
inline |
Definition at line 172 of file ComparisonCategories.h.
|
inline |
Definition at line 168 of file ComparisonCategories.h.
QualType ComparisonCategoryInfo::getType | ( | ) | const |
Definition at line 145 of file ComparisonCategories.cpp.
References clang::TypeDecl::getTypeForDecl(), and Record.
|
inline |
Definition at line 180 of file ComparisonCategories.h.
|
inline |
Definition at line 119 of file ComparisonCategories.h.
References clang::ComparisonCategoryInfo::ValueInfo::hasValidIntValue().
Referenced by EvaluateComparisonBinaryOperator().
|
inline |
True iff the comparison category is an equality comparison.
Definition at line 129 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
inline |
True iff the comparison category is a relational comparison.
Definition at line 132 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
inline |
True iff the comparison is not totally ordered.
Definition at line 146 of file ComparisonCategories.h.
|
inline |
True iff the comparison is "strong".
i.e. it checks equality and not equivalence.
Definition at line 140 of file ComparisonCategories.h.
|
inline |
Converts the specified result kind into the the correct result kind for this category.
Specifically it lowers strong equality results to weak equivalence if needed.
Definition at line 154 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
friend |
Definition at line 68 of file ComparisonCategories.h.
|
friend |
Definition at line 69 of file ComparisonCategories.h.
ComparisonCategoryType clang::ComparisonCategoryInfo::Kind |
The Kind of the comparison category type.
Definition at line 114 of file ComparisonCategories.h.
CXXRecordDecl* clang::ComparisonCategoryInfo::Record = nullptr |
The declaration for the comparison category type from the standard library.
Definition at line 111 of file ComparisonCategories.h.
Referenced by clang::ComparisonCategoryInfo::ValueInfo::getIntValue(), getType(), clang::ComparisonCategoryInfo::ValueInfo::hasValidIntValue(), and clang::ComparisonCategories::lookupInfo().