Searched refs:caseType (Results 1 - 5 of 5) sorted by relevance
/arkcompiler/ets_frontend/ets2panda/ir/statements/ |
H A D | switchCaseStatement.cpp | 106 auto *caseType = test_->Check(checker); in CheckAndTestCase() local 109 if (caseType->HasTypeFlag(checker::TypeFlag::CHAR)) { in CheckAndTestCase() 111 } else if (caseType->IsETSIntEnumType() && comparedExprType->IsETSIntEnumType()) { in CheckAndTestCase() 112 validCaseType = comparedExprType->AsETSIntEnumType()->IsSameEnumType(caseType->AsETSIntEnumType()); in CheckAndTestCase() 113 } else if (caseType->IsETSStringEnumType() && comparedExprType->IsETSStringEnumType()) { in CheckAndTestCase() 114 validCaseType = comparedExprType->AsETSStringEnumType()->IsSameEnumType(caseType->AsETSStringEnumType()); in CheckAndTestCase() 117 checker->Relation(), node, caseType, unboxedDiscType, test_->Start(), {}, in CheckAndTestCase() 122 checker->LogTypeError({"Switch case type '", caseType, "' is not comparable to discriminant type '", in CheckAndTestCase() 131 {"Switch case type '", caseType, "' is not comparable to discriminant type '", comparedExprType, "'"}, in CheckAndTestCase()
|
/arkcompiler/ets_frontend/es2panda/ir/statements/ |
H A D | switchStatement.cpp | 90 checker::Type *caseType = it->Test()->Check(checker); in Check() local 91 bool caseIsLiteral = checker::Checker::IsLiteralType(caseType); in Check() 95 caseType = caseIsLiteral ? checker->GetBaseTypeOfLiteralType(caseType) : caseType; in Check() 99 if (!checker->IsTypeEqualityComparableTo(comparedExprType, caseType) && in Check() 100 !checker->IsTypeComparableTo(caseType, comparedExprType)) { in Check() 101 checker->ThrowTypeError({"Type ", caseType, " is not comparable to type ", comparedExprType}, in Check()
|
/arkcompiler/ets_frontend/ets2panda/checker/ets/ |
H A D | helpers.cpp | 1734 std::string ETSChecker::GetStringFromIdentifierValue(checker::Type *caseType) const in GetStringFromIdentifierValue() 1736 const auto identifierTypeKind = ETSChecker::TypeKind(caseType); in GetStringFromIdentifierValue() 1739 return std::to_string(caseType->AsByteType()->GetValue()); in GetStringFromIdentifierValue() 1742 return std::to_string(caseType->AsShortType()->GetValue()); in GetStringFromIdentifierValue() 1745 return std::to_string(caseType->AsCharType()->GetValue()); in GetStringFromIdentifierValue() 1748 return std::to_string(caseType->AsIntType()->GetValue()); in GetStringFromIdentifierValue() 1751 return std::to_string(caseType->AsLongType()->GetValue()); in GetStringFromIdentifierValue() 1754 VarBinder()->ThrowError(caseType->AsETSObjectType()->Variable()->Declaration()->Node()->Start(), in GetStringFromIdentifierValue() 1787 auto *caseType = caseTest->TsType(); in CheckItemCasesConstant() local 1798 if (!caseType in CheckItemCasesConstant() 1897 checker::Type *caseType = currentCase->TsType(); CheckIdentifierSwitchCase() local [all...] |
/arkcompiler/ets_frontend/ets2panda/checker/ |
H A D | TSAnalyzer.cpp | 1259 checker::Type *caseType = it->Test()->Check(checker); in Check() local 1260 bool caseIsLiteral = checker::TSChecker::IsLiteralType(caseType); in Check() 1264 caseType = caseIsLiteral ? checker->GetBaseTypeOfLiteralType(caseType) : caseType; in Check() 1268 if (!checker->IsTypeEqualityComparableTo(comparedExprType, caseType) && in Check() 1269 !checker->IsTypeComparableTo(caseType, comparedExprType)) { in Check() 1270 checker->ThrowTypeError({"Type ", caseType, " is not comparable to type ", comparedExprType}, in Check()
|
H A D | ETSchecker.h | 569 std::string GetStringFromIdentifierValue(checker::Type *caseType) const;
|
Completed in 11 milliseconds