File tree Expand file tree Collapse file tree 1 file changed +15
-17
lines changed Expand file tree Collapse file tree 1 file changed +15
-17
lines changed Original file line number Diff line number Diff line change @@ -27888,24 +27888,22 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
27888
27888
for (const type of types) {
27889
27889
if (type.flags & (TypeFlags.Object | TypeFlags.Intersection | TypeFlags.InstantiableNonPrimitive)) {
27890
27890
const discriminant = getTypeOfPropertyOfType(type, name);
27891
- if (discriminant) {
27892
- if (!isLiteralType(discriminant)) {
27893
- return undefined;
27894
- }
27895
- let duplicate = false;
27896
- forEachType(discriminant, t => {
27897
- const id = getTypeId(getRegularTypeOfLiteralType(t));
27898
- const existing = map.get(id);
27899
- if (!existing) {
27900
- map.set(id, type);
27901
- }
27902
- else if (existing !== unknownType) {
27903
- map.set(id, unknownType);
27904
- duplicate = true;
27905
- }
27906
- });
27907
- if (!duplicate) count++;
27891
+ if (!discriminant || !isLiteralType(discriminant)) {
27892
+ return undefined;
27908
27893
}
27894
+ let duplicate = false;
27895
+ forEachType(discriminant, t => {
27896
+ const id = getTypeId(getRegularTypeOfLiteralType(t));
27897
+ const existing = map.get(id);
27898
+ if (!existing) {
27899
+ map.set(id, type);
27900
+ }
27901
+ else if (existing !== unknownType) {
27902
+ map.set(id, unknownType);
27903
+ duplicate = true;
27904
+ }
27905
+ });
27906
+ if (!duplicate) count++;
27909
27907
}
27910
27908
}
27911
27909
return count >= 10 && count * 2 >= types.length ? map : undefined;
You can’t perform that action at this time.
0 commit comments