clang
8.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 68 of file ComparisonCategories.h.
|
inline |
Definition at line 73 of file ComparisonCategories.h.
|
inline |
Definition at line 166 of file ComparisonCategories.h.
|
inline |
Definition at line 177 of file ComparisonCategories.h.
|
inline |
Definition at line 173 of file ComparisonCategories.h.
|
inline |
Definition at line 169 of file ComparisonCategories.h.
QualType ComparisonCategoryInfo::getType | ( | ) | const |
Definition at line 146 of file ComparisonCategories.cpp.
References clang::TypeDecl::getTypeForDecl(), and Record.
|
inline |
Definition at line 181 of file ComparisonCategories.h.
|
inline |
Definition at line 120 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 130 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
inline |
True iff the comparison category is a relational comparison.
Definition at line 133 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
inline |
True iff the comparison is not totally ordered.
Definition at line 147 of file ComparisonCategories.h.
|
inline |
True iff the comparison is "strong".
i.e. it checks equality and not equivalence.
Definition at line 141 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 155 of file ComparisonCategories.h.
Referenced by EvaluateComparisonBinaryOperator().
|
friend |
Definition at line 69 of file ComparisonCategories.h.
|
friend |
Definition at line 70 of file ComparisonCategories.h.
ComparisonCategoryType clang::ComparisonCategoryInfo::Kind |
The Kind of the comparison category type.
Definition at line 115 of file ComparisonCategories.h.
CXXRecordDecl* clang::ComparisonCategoryInfo::Record = nullptr |
The declaration for the comparison category type from the standard library.
Definition at line 112 of file ComparisonCategories.h.
Referenced by clang::ComparisonCategoryInfo::ValueInfo::getIntValue(), getType(), clang::ComparisonCategoryInfo::ValueInfo::hasValidIntValue(), and clang::ComparisonCategories::lookupInfo().