Use covariant types for InventoryHolder and Container implementors

This commit is contained in:
Dylan K. Taylor
2022-06-05 18:49:48 +01:00
parent 38cf9fc6e6
commit f2dc9187f0
11 changed files with 17 additions and 67 deletions

View File

@ -114,20 +114,14 @@ class Chest extends Spawnable implements Container, Nameable{
$this->containerTraitBlockDestroyedHook();
}
/**
* @return ChestInventory|DoubleChestInventory
*/
public function getInventory(){
public function getInventory() : ChestInventory|DoubleChestInventory{
if($this->isPaired() && $this->doubleInventory === null){
$this->checkPairing();
}
return $this->doubleInventory instanceof DoubleChestInventory ? $this->doubleInventory : $this->inventory;
}
/**
* @return ChestInventory
*/
public function getRealInventory(){
public function getRealInventory() : ChestInventory{
return $this->inventory;
}