Home
last modified time | relevance | path

Searched refs:relation (Results 1 - 25 of 202) sorted by relevance

123456789

/arkcompiler/ets_frontend/ets2panda/checker/ets/
H A Dconversion.cpp25 void Identity(TypeRelation *const relation, Type *const source, Type *const target) in Identity() argument
27 relation->IsIdenticalTo(source, target); in Identity()
30 void WideningPrimitive(TypeRelation *const relation, Type *const source, Type *const target) in WideningPrimitive() argument
34 WideningConverter(relation->GetChecker()->AsETSChecker(), relation, target, source); in WideningPrimitive()
37 void NarrowingPrimitive(TypeRelation *const relation, Type *const source, Type *const target) in NarrowingPrimitive() argument
41 NarrowingConverter(relation->GetChecker()->AsETSChecker(), relation, target, source); in NarrowingPrimitive()
44 void WideningNarrowingPrimitive(TypeRelation *const relation, ByteType *const source, CharType *const target) in WideningNarrowingPrimitive() argument
46 auto *const tempInt = relation in WideningNarrowingPrimitive()
54 WideningReference(TypeRelation *const relation, ETSObjectType *const source, ETSObjectType *const target) WideningReference() argument
59 WideningReference(TypeRelation *const relation, ETSArrayType *const source, ETSObjectType *const target) WideningReference() argument
64 WideningReference(TypeRelation *const relation, ETSArrayType *const source, ETSArrayType *const target) WideningReference() argument
71 IsAllowedNarrowingReferenceConversionObjectObject(TypeRelation *const relation, ETSObjectType *const source, ETSObjectType *const target) IsAllowedNarrowingReferenceConversionObjectObject() argument
117 IsAllowedNarrowingReferenceConversion(TypeRelation *const relation, Type *const source, Type *const target) IsAllowedNarrowingReferenceConversion() argument
187 IsUncheckedNarrowingReferenceConversion([[maybe_unused]] TypeRelation *const relation, [[maybe_unused]] Type *const source, [[maybe_unused]] Type *const target) IsUncheckedNarrowingReferenceConversion() argument
208 NarrowingReferenceImpl(TypeRelation *const relation, Type *const source, Type *const target) NarrowingReferenceImpl() argument
225 NarrowingReference(TypeRelation *const relation, ETSObjectType *const source, ETSObjectType *const target) NarrowingReference() argument
230 NarrowingReference(TypeRelation *const relation, ETSArrayType *const source, ETSArrayType *const target) NarrowingReference() argument
240 NarrowingReference(TypeRelation *const relation, ETSObjectType *const source, ETSArrayType *const target) NarrowingReference() argument
250 RollbackBoxingIfFailed(TypeRelation *const relation) RollbackBoxingIfFailed() argument
257 Boxing(TypeRelation *const relation, Type *const source) Boxing() argument
269 Unboxing(TypeRelation *const relation, ETSObjectType *const source) Unboxing() argument
281 UnboxingWideningPrimitive(TypeRelation *const relation, ETSObjectType *const source, Type *const target) UnboxingWideningPrimitive() argument
292 UnboxingNarrowingPrimitive(TypeRelation *const relation, ETSObjectType *const source, Type *const target) UnboxingNarrowingPrimitive() argument
302 UnboxingWideningNarrowingPrimitive(TypeRelation *const relation, ETSObjectType *const source, Type *const target) UnboxingWideningNarrowingPrimitive() argument
312 NarrowingReferenceUnboxing(TypeRelation *const relation, ETSObjectType *const source, Type *const target) NarrowingReferenceUnboxing() argument
326 BoxingWideningReference(TypeRelation *const relation, Type *const source, ETSObjectType *const target) BoxingWideningReference() argument
337 String(TypeRelation *const relation, Type *const source) String() argument
357 Forbidden(TypeRelation *const relation) Forbidden() argument
[all...]
H A Dconversion.h23 void Identity(TypeRelation *relation, Type *source, Type *target);
25 void WideningPrimitive(TypeRelation *relation, Type *source, Type *target);
26 void NarrowingPrimitive(TypeRelation *relation, Type *source, Type *target);
27 void WideningNarrowingPrimitive(TypeRelation *relation, ByteType *source, CharType *target);
29 void WideningReference(TypeRelation *relation, ETSObjectType *source, ETSObjectType *target);
30 void WideningReference(TypeRelation *relation, ETSArrayType *source, ETSObjectType *target);
31 void WideningReference(TypeRelation *relation, ETSArrayType *source, ETSArrayType *target);
33 void NarrowingReference(TypeRelation *relation, ETSObjectType *source, ETSObjectType *target);
34 void NarrowingReference(TypeRelation *relation, ETSObjectType *source, ETSArrayType *target);
35 void NarrowingReference(TypeRelation *relation, ETSArrayTyp
[all...]
H A DcastingContext.cpp20 CastingContext::CastingContext(TypeRelation *relation, std::initializer_list<TypeErrorMessageElement> list, in CastingContext() argument
25 const SavedTypeRelationFlagsContext savedTypeRelationFlags(relation, flags_); in CastingContext()
26 relation->SetNode(data.node); in CastingContext()
27 relation->Result(false); in CastingContext()
29 if (!relation->IsSupertypeOf(data.target, data.source)) { in CastingContext()
30 relation->IsCastableTo(data.source, data.target); in CastingContext()
31 if (!relation->IsTrue() && data.source->ToString() == data.target->ToString()) { in CastingContext()
32 relation->Result(true); in CastingContext()
34 if (!relation->IsTrue() && (flags_ & TypeRelationFlag::NO_THROW) == 0) { in CastingContext()
35 relation in CastingContext()
[all...]
/arkcompiler/ets_frontend/ets2panda/checker/types/ets/
H A DfloatType.cpp22 void FloatType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void FloatType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingWideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool FloatType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
39 if (relation in AssignmentSource()
53 Cast(TypeRelation *const relation, Type *const target) Cast() argument
98 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DbyteType.cpp22 void ByteType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void ByteType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool ByteType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
39 if (relation in AssignmentSource()
53 Cast(TypeRelation *const relation, Type *const target) Cast() argument
98 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DdoubleType.cpp22 void DoubleType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void DoubleType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing() && !relation->IsTrue()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 WideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool DoubleType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unuse argument
52 Cast(TypeRelation *const relation, Type *const target) Cast() argument
93 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DcharType.cpp22 void CharType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void CharType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingWideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool CharType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
39 if (relation in AssignmentSource()
58 Cast(TypeRelation *const relation, Type *const target) Cast() argument
108 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DintType.cpp22 void IntType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void IntType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing() && !relation->IsTrue()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingWideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool IntType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unuse argument
53 Cast(TypeRelation *const relation, Type *const target) Cast() argument
103 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DshortType.cpp22 void ShortType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void ShortType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing() && !relation->IsTrue()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingWideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool ShortType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unuse argument
53 Cast(TypeRelation *const relation, Type *const target) Cast() argument
98 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DlongType.cpp22 void LongType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void LongType::AssignmentTarget(TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing() && !relation->IsTrue()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
34 NarrowingWideningConverter(relation->GetChecker()->AsETSChecker(), relation, this, source); in AssignmentTarget()
37 bool LongType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unuse argument
53 Cast(TypeRelation *const relation, Type *const target) Cast() argument
98 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsReadonlyType.cpp33 void ETSReadonlyType::Identical(TypeRelation *relation, Type *other) in Identical() argument
35 relation->Result(false); in Identical()
37 relation->IsIdenticalTo(GetUnderlying(), other->AsETSReadonlyType()->GetUnderlying()); in Identical()
41 bool ETSReadonlyType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
43 return relation->Result(false); in AssignmentSource()
46 void ETSReadonlyType::AssignmentTarget([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
49 relation->Result(true); in AssignmentTarget()
52 relation->Result(false); in AssignmentTarget()
55 void ETSReadonlyType::Cast(TypeRelation *relation, [[maybe_unused]] Type *target) in Cast() argument
57 if (relation in Cast()
67 CastTarget(TypeRelation *relation, [[maybe_unused]] Type *source) CastTarget() argument
78 IsSupertypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) IsSupertypeOf() argument
83 IsSubtypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) IsSubtypeOf() argument
92 Substitute([[maybe_unused]] TypeRelation *relation, const Substitution *substitution) Substitute() argument
111 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsNonNullishType.cpp32 void ETSNonNullishType::Identical(TypeRelation *relation, Type *other) in Identical() argument
35 relation->IsIdenticalTo(GetUnderlying(), other->AsETSNonNullishType()->GetUnderlying()); in Identical()
39 bool ETSNonNullishType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
41 return relation->IsSupertypeOf(target, this); in AssignmentSource()
44 void ETSNonNullishType::AssignmentTarget([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
46 relation->IsSupertypeOf(this, source); in AssignmentTarget()
49 void ETSNonNullishType::Cast(TypeRelation *relation, Type *target) in Cast() argument
51 if (relation->IsSupertypeOf(target, this)) { in Cast()
52 relation->RemoveFlags(TypeRelationFlag::UNCHECKED_CAST); in Cast()
55 if (relation in Cast()
62 CastTarget(TypeRelation *relation, Type *source) CastTarget() argument
74 IsSupertypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) IsSupertypeOf() argument
79 IsSubtypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) IsSubtypeOf() argument
88 Substitute([[maybe_unused]] TypeRelation *relation, const Substitution *substitution) Substitute() argument
107 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsBooleanType.cpp22 void ETSBooleanType::Identical(TypeRelation *relation, Type *other) in Identical() argument
25 relation->Result(true); in Identical()
29 void ETSBooleanType::AssignmentTarget([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) in AssignmentTarget() argument
31 if (relation->ApplyUnboxing() && !relation->IsTrue()) { in AssignmentTarget()
32 relation->GetChecker()->AsETSChecker()->AddUnboxingFlagToPrimitiveType(relation, source, this); in AssignmentTarget()
36 bool ETSBooleanType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
38 if (relation->ApplyBoxing() && target->IsETSObjectType()) { in AssignmentSource()
39 relation in AssignmentSource()
45 Cast(TypeRelation *const relation, Type *const target) Cast() argument
70 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsTypeParameter.cpp31 void ETSTypeParameter::Identical(TypeRelation *relation, Type *other) in Identical() argument
33 relation->Result(false); in Identical()
35 relation->Result(true); in Identical()
39 bool ETSTypeParameter::AssignmentSource(TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
41 return relation->IsAssignableTo(this->GetConstraintType(), target); in AssignmentSource()
44 void ETSTypeParameter::AssignmentTarget(TypeRelation *relation, Type *source) in AssignmentTarget() argument
47 relation->Result(true); in AssignmentTarget()
51 relation->IsSupertypeOf(this, source); in AssignmentTarget()
54 void ETSTypeParameter::Cast(TypeRelation *relation, Type *target) in Cast() argument
56 if (relation in Cast()
68 CastTarget(TypeRelation *relation, Type *source) CastTarget() argument
78 IsSupertypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *source) IsSupertypeOf() argument
83 IsSubtypeOf([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) IsSubtypeOf() argument
92 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
106 Substitute([[maybe_unused]] TypeRelation *relation, const Substitution *substitution) Substitute() argument
[all...]
H A DetsArrayType.cpp69 void ETSArrayType::Identical(TypeRelation *relation, Type *other) in Identical() argument
74 relation->Result(true); in Identical()
77 relation->IsIdenticalTo(element_, other->AsETSArrayType()->ElementType()); in Identical()
81 void ETSArrayType::AssignmentTarget(TypeRelation *relation, Type *source) in AssignmentTarget() argument
88 relation->IsAssignableTo(source->AsETSArrayType()->ElementType(), element_); in AssignmentTarget()
92 void ETSArrayType::Cast(TypeRelation *const relation, Type *const target) in Cast() argument
95 conversion::Identity(relation, this, target->AsETSArrayType()); in Cast()
96 if (relation->IsTrue()) { in Cast()
100 conversion::WideningReference(relation, this, target->AsETSArrayType()); in Cast()
101 if (relation in Cast()
133 IsSupertypeOf(TypeRelation *const relation, Type *source) IsSupertypeOf() argument
146 Instantiate(ArenaAllocator *allocator, TypeRelation *relation, GlobalTypesHolder *globalTypes) Instantiate() argument
152 Substitute(TypeRelation *relation, const Substitution *substitution) Substitute() argument
[all...]
H A DetsFunctionType.cpp49 void ETSFunctionType::Identical(TypeRelation *relation, Type *other) in Identical() argument
56 AssignmentTarget(relation, other); in Identical()
60 callSignatures_[0]->Compatible(relation, other->AsETSFunctionType()->CallSignatures()[0]); in Identical()
63 bool ETSFunctionType::AssignmentSource(TypeRelation *relation, Type *target) in AssignmentSource() argument
66 ASSERT(relation->GetNode() != nullptr); in AssignmentSource()
67 if (relation->GetNode()->IsArrowFunctionExpression()) { in AssignmentSource()
69 relation->Result(true); in AssignmentSource()
72 relation->Result(false); in AssignmentSource()
76 if (target->IsETSObjectType() && target == relation->GetChecker()->AsETSChecker()->GlobalETSObjectType()) { in AssignmentSource()
77 relation in AssignmentSource()
85 ProcessSignatures(TypeRelation *relation, Signature *target, ETSFunctionType *sourceFuncType) ProcessSignatures() argument
143 AssignmentTarget(TypeRelation *relation, Type *source) AssignmentTarget() argument
181 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
193 Substitute(TypeRelation *relation, const Substitution *substitution) Substitute() argument
215 CastFunctionParams(TypeRelation *relation, Signature *targetInvokeSig) CastFunctionParams() argument
235 Cast(TypeRelation *relation, Type *target) Cast() argument
[all...]
H A DetsStringType.cpp31 void ETSStringType::Identical(TypeRelation *relation, Type *other) in Identical() argument
37 relation->Result(true); in Identical()
41 bool ETSStringType::AssignmentSource(TypeRelation *relation, Type *target) in AssignmentSource() argument
43 auto node = relation->GetNode(); in AssignmentSource()
44 if ((relation->InAssignmentContext() || relation->ApplyStringToChar()) && IsConvertibleTo(target)) { in AssignmentSource()
46 relation->Result(true); in AssignmentSource()
48 relation->Result(target->IsETSStringType() && AreStringTypesAssignable(this, target)); in AssignmentSource()
51 return relation->IsTrue(); in AssignmentSource()
54 void ETSStringType::AssignmentTarget([[maybe_unused]] TypeRelation *relation, Typ argument
59 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
65 IsSupertypeOf(TypeRelation *relation, Type *source) IsSupertypeOf() argument
75 IsSubtypeOf(TypeRelation *relation, Type *source) IsSubtypeOf() argument
[all...]
H A DetsTupleType.cpp49 void ETSTupleType::Identical([[maybe_unused]] TypeRelation *const relation, Type *const other) in Identical() argument
62 if (!relation->IsIdenticalTo(GetTypeAtIndex(idx), otherTuple->GetTypeAtIndex(idx))) { in Identical()
63 relation->Result(false); in Identical()
69 relation->Result(false); in Identical()
73 relation->Result(true); in Identical()
76 bool ETSTupleType::AssignmentSource(TypeRelation *const relation, Type *const target) in AssignmentSource() argument
87 relation, TypeRelationFlag::NO_BOXING | TypeRelationFlag::NO_UNBOXING | TypeRelationFlag::NO_WIDENING); in AssignmentSource()
89 relation->Result(relation->IsAssignableTo(ElementType(), arrayTarget->ElementType())); in AssignmentSource()
92 return relation in AssignmentSource()
95 AssignmentTarget(TypeRelation *const relation, Type *const source) AssignmentTarget() argument
140 Substitute(TypeRelation *relation, const Substitution *substitution) Substitute() argument
154 Cast(TypeRelation *const relation, Type *const target) Cast() argument
207 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsNullishTypes.cpp25 void ETSNullType::Identical(TypeRelation *relation, Type *other) in Identical() argument
27 relation->Result(other->IsETSNullType()); in Identical()
30 void ETSNullType::AssignmentTarget(TypeRelation *relation, Type *source) in AssignmentTarget() argument
32 Identical(relation, source); in AssignmentTarget()
35 bool ETSNullType::AssignmentSource(TypeRelation *relation, Type *target) in AssignmentSource() argument
37 return relation->IsSupertypeOf(target, this); in AssignmentSource()
40 void ETSNullType::Compare([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *other) in Compare() argument
45 void ETSNullType::Cast(TypeRelation *relation, Type *target) in Cast() argument
47 Identical(relation, target); in Cast()
50 void ETSNullType::CastTarget(TypeRelation *relation, Typ argument
70 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
76 Identical(TypeRelation *relation, Type *other) Identical() argument
81 AssignmentTarget(TypeRelation *relation, Type *source) AssignmentTarget() argument
86 AssignmentSource(TypeRelation *relation, Type *target) AssignmentSource() argument
91 Compare([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *other) Compare() argument
96 Cast(TypeRelation *relation, Type *target) Cast() argument
101 CastTarget(TypeRelation *relation, Type *source) CastTarget() argument
121 Instantiate([[maybe_unused]] ArenaAllocator *allocator, [[maybe_unused]] TypeRelation *relation, [[maybe_unused]] GlobalTypesHolder *globalTypes) Instantiate() argument
[all...]
H A DetsAsyncFuncReturnType.cpp28 void ETSAsyncFuncReturnType::Identical(TypeRelation *relation, Type *other) in Identical() argument
32 if (relation->IsIdenticalTo(promiseType_, otherRetType->promiseType_) && in Identical()
33 relation->IsIdenticalTo(GetPromiseTypeArg(), otherRetType->GetPromiseTypeArg())) { in Identical()
34 relation->Result(true); in Identical()
39 relation->Result(false); in Identical()
42 bool ETSAsyncFuncReturnType::AssignmentSource([[maybe_unused]] TypeRelation *relation, [[maybe_unused]] Type *target) in AssignmentSource() argument
47 void ETSAsyncFuncReturnType::AssignmentTarget(TypeRelation *relation, Type *source) in AssignmentTarget() argument
49 relation->IsAssignableTo(source, promiseType_) || relation->IsAssignableTo(source, GetPromiseTypeArg()); in AssignmentTarget()
50 if (relation in AssignmentTarget()
[all...]
H A DetsDynamicType.cpp39 void ETSDynamicType::AssignmentTarget(TypeRelation *relation, Type *source) in AssignmentTarget() argument
42 return ETSObjectType::AssignmentTarget(relation, source); in AssignmentTarget()
45 if (relation->ApplyBoxing() && !relation->IsTrue() && IsConvertible(source)) { in AssignmentTarget()
46 relation->Result(true); in AssignmentTarget()
51 relation->Result(true); in AssignmentTarget()
55 bool ETSDynamicType::AssignmentSource(TypeRelation *relation, Type *target) in AssignmentSource() argument
58 return ETSObjectType::AssignmentSource(relation, target); in AssignmentSource()
61 if (relation->ApplyUnboxing() && IsConvertible(target)) { in AssignmentSource()
62 relation in AssignmentSource()
72 Cast(TypeRelation *relation, Type *target) Cast() argument
86 CastTarget(TypeRelation *relation, Type *source) CastTarget() argument
[all...]
H A DetsUnionType.cpp51 bool ETSUnionType::EachTypeRelatedToSomeType(TypeRelation *relation, ETSUnionType *source, ETSUnionType *target) in EachTypeRelatedToSomeType() argument
54 [relation, target](auto *s) { return TypeRelatedToSomeType(relation, s, target); }); in EachTypeRelatedToSomeType()
57 bool ETSUnionType::TypeRelatedToSomeType(TypeRelation *relation, Type *source, ETSUnionType *target) in TypeRelatedToSomeType() argument
60 [relation, source](auto *t) { return relation->IsIdenticalTo(source, t); }); in TypeRelatedToSomeType()
100 void ETSUnionType::Identical(TypeRelation *relation, Type *other)
103 if (EachTypeRelatedToSomeType(relation, this, other->AsETSUnionType()) &&
104 EachTypeRelatedToSomeType(relation, other->AsETSUnionType(), this)) {
105 relation
[all...]
/arkcompiler/ets_frontend/ets2panda/checker/types/ts/
H A DobjectType.cpp24 bool ObjectType::EachSignatureRelatedToSomeSignature(TypeRelation *relation, in EachSignatureRelatedToSomeSignature() argument
30 return std::all_of(sourceSignatures.begin(), sourceSignatures.end(), [relation, &targetCopy](Signature *source) { in EachSignatureRelatedToSomeSignature()
31 return SignatureRelatedToSomeSignature(relation, source, &targetCopy); in EachSignatureRelatedToSomeSignature()
35 bool ObjectType::SignatureRelatedToSomeSignature(TypeRelation *relation, Signature *sourceSignature, in SignatureRelatedToSomeSignature() argument
39 if (relation->IsCompatibleTo(sourceSignature, *it)) { in SignatureRelatedToSomeSignature()
50 bool ObjectType::FindPropertyAndCheckIdentical(TypeRelation *relation, ObjectType *otherObj) in FindPropertyAndCheckIdentical() argument
55 relation->Result(false); in FindPropertyAndCheckIdentical()
59 relation->IsIdenticalTo(it->TsType(), found->TsType()); in FindPropertyAndCheckIdentical()
61 if (!relation->IsTrue()) { in FindPropertyAndCheckIdentical()
66 relation in FindPropertyAndCheckIdentical()
73 Identical(TypeRelation *relation, Type *other) Identical() argument
121 AssignProperties(TypeRelation *relation, ObjectType *source) AssignProperties() argument
163 AssignSignatures(TypeRelation *relation, ObjectType *source, bool assignCallSignatures) AssignSignatures() argument
187 AssignIndexInfo([[maybe_unused]] TypeRelation *relation, ObjectType *source, bool assignNumberInfo) AssignIndexInfo() argument
210 CheckExcessProperties(TypeRelation *relation, ObjectType *source) CheckExcessProperties() argument
225 AssignmentTarget(TypeRelation *relation, Type *source) AssignmentTarget() argument
[all...]
/arkcompiler/ets_frontend/es2panda/typescript/types/
H A DobjectType.cpp25 bool ObjectType::EachSignatureRelatedToSomeSignature(TypeRelation *relation, in EachSignatureRelatedToSomeSignature() argument
31 return std::all_of(sourceSignatures.begin(), sourceSignatures.end(), [relation, &targetCopy](Signature *source) { in EachSignatureRelatedToSomeSignature()
32 return SignatureRelatedToSomeSignature(relation, source, &targetCopy); in EachSignatureRelatedToSomeSignature()
36 bool ObjectType::SignatureRelatedToSomeSignature(TypeRelation *relation, Signature *sourceSignature, in SignatureRelatedToSomeSignature() argument
40 if (relation->IsIdenticalTo(sourceSignature, *it)) { in SignatureRelatedToSomeSignature()
51 bool ObjectType::IsPropertiesIdentical(TypeRelation *relation, ObjectType *otherObj) in IsPropertiesIdentical() argument
56 relation->Result(false); in IsPropertiesIdentical()
60 relation->IsIdenticalTo(it->TsType(), found->TsType()); in IsPropertiesIdentical()
62 if (!relation->IsTrue()) { in IsPropertiesIdentical()
67 relation in IsPropertiesIdentical()
75 IsIndexInfosIdentical(TypeRelation *relation, IndexInfo *descIndexInfo, IndexInfo *otherIndexInfo) IsIndexInfosIdentical() argument
87 Identical(TypeRelation *relation, Type *other) Identical() argument
125 AssignProperties(TypeRelation *relation, ObjectType *source) AssignProperties() argument
166 AssignSignatures(TypeRelation *relation, ObjectType *source, bool assignCallSignatures) AssignSignatures() argument
190 AssignIndexInfo([[maybe_unused]] TypeRelation *relation, ObjectType *source, bool assignNumberInfo) AssignIndexInfo() argument
213 checkExcessProperties(TypeRelation *relation, ObjectType *source) checkExcessProperties() argument
227 AssignmentTarget(TypeRelation *relation, Type *source) AssignmentTarget() argument
[all...]
H A Dsignature.cpp20 Signature *Signature::Copy(ArenaAllocator *allocator, TypeRelation *relation, GlobalTypesHolder *globalTypes) in Copy() argument
26 it->SetTsType(it->TsType()->Instantiate(allocator, relation, globalTypes)); in Copy()
29 Type *copiedReturnType = returnType_->Instantiate(allocator, relation, globalTypes); in Copy()
77 void Signature::Identical(TypeRelation *relation, Signature *other) in Identical() argument
81 relation->Result(false); in Identical()
85 relation->IsIdenticalTo(returnType_, other->ReturnType()); in Identical()
87 if (relation->IsTrue()) { in Identical()
89 relation->IsIdenticalTo(signatureInfo_->params[i]->TsType(), other->Params()[i]->TsType()); in Identical()
90 if (!relation->IsTrue()) { in Identical()
96 relation in Identical()
103 AssignmentTarget(TypeRelation *relation, Signature *source) AssignmentTarget() argument
[all...]

Completed in 8 milliseconds

123456789