Skip to content

Commit

Permalink
Fix for Threaded
Browse files Browse the repository at this point in the history
  • Loading branch information
ondrejmirtes committed Mar 24, 2022
1 parent 707f57a commit a355aaa
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions src/Type/ObjectType.php
Expand Up @@ -696,7 +696,8 @@ public function getIterableKeyType(): Type
}
}

if ($this->isInstanceOf(Traversable::class)->yes() && !$this->isExtraOffsetAccessibleClass()->yes()) {
$extraOffsetAccessible = $this->isExtraOffsetAccessibleClass()->yes();
if ($this->isInstanceOf(Traversable::class)->yes() && !$extraOffsetAccessible) {
$isTraversable = true;
$tKey = GenericTypeVariableResolver::getType($this, Traversable::class, 'TKey');
if ($tKey !== null) {
Expand All @@ -712,6 +713,10 @@ public function getIterableKeyType(): Type
)->getReturnType());
}

if ($extraOffsetAccessible) {
return new MixedType(true);
}

if ($isTraversable) {
return new MixedType();
}
Expand All @@ -732,7 +737,8 @@ public function getIterableValueType(): Type
}
}

if ($this->isInstanceOf(Traversable::class)->yes() && !$this->isExtraOffsetAccessibleClass()->yes()) {
$extraOffsetAccessible = $this->isExtraOffsetAccessibleClass()->yes();
if ($this->isInstanceOf(Traversable::class)->yes() && !$extraOffsetAccessible) {
$isTraversable = true;
$tValue = GenericTypeVariableResolver::getType($this, Traversable::class, 'TValue');
if ($tValue !== null) {
Expand All @@ -748,6 +754,10 @@ public function getIterableValueType(): Type
)->getReturnType());
}

if ($extraOffsetAccessible) {
return new MixedType(true);
}

if ($isTraversable) {
return new MixedType();
}
Expand Down

0 comments on commit a355aaa

Please sign in to comment.