Add stubs for Psr\Container to allow running psalm with multiple threads

Signed-off-by: jld3103 <jld3103yt@gmail.com>
This commit is contained in:
jld3103 2023-03-24 12:54:30 +01:00
parent 9f1eacd67e
commit 4d390b5f54
No known key found for this signature in database
GPG Key ID: 9062417B9E8EB7B3
3 changed files with 54 additions and 0 deletions

View File

@ -0,0 +1,52 @@
<?php
declare(strict_types=1);
namespace Psr\Container;
use Throwable;
/**
* Base interface representing a generic exception in a container.
*/
interface ContainerExceptionInterface extends Throwable
{
}
/**
* Describes the interface of a container that exposes methods to read its entries.
*/
interface ContainerInterface
{
/**
* Finds an entry of the container by its identifier and returns it.
*
* @param string $id Identifier of the entry to look for.
*
* @throws NotFoundExceptionInterface No entry was found for **this** identifier.
* @throws ContainerExceptionInterface Error while retrieving the entry.
*
* @return mixed Entry.
*/
public function get(string $id);
/**
* Returns true if the container can return an entry for the given identifier.
* Returns false otherwise.
*
* `has($id)` returning true does not mean that `get($id)` will not throw an exception.
* It does however mean that `get($id)` will not throw a `NotFoundExceptionInterface`.
*
* @param string $id Identifier of the entry to look for.
*
* @return bool
*/
public function has(string $id): bool;
}
/**
* No entry was found in the container.
*/
interface NotFoundExceptionInterface extends ContainerExceptionInterface
{
}

View File

@ -20,6 +20,7 @@
<stubs>
<file name="build/stubs/gd.php"/>
<file name="build/stubs/ldap.php"/>
<file name="build/stubs/psr_container.php"/>
</stubs>
<extraFiles>
<directory name="3rdparty"/>

View File

@ -77,6 +77,7 @@
<file name="build/stubs/ftp.php"/>
<file name="build/stubs/pcntl.php"/>
<file name="build/stubs/zip.php"/>
<file name="build/stubs/psr_container.php"/>
<file name="3rdparty/sabre/uri/lib/functions.php" />
</stubs>
<issueHandlers>