aboutsummaryrefslogtreecommitdiffstats
path: root/build/stubs
diff options
context:
space:
mode:
authorjld3103 <jld3103yt@gmail.com>2023-03-24 12:54:30 +0100
committerjld3103 <jld3103yt@gmail.com>2023-03-31 08:27:50 +0200
commit4d390b5f5486c7198d973413ef5f1acc6ac9fc3c (patch)
treec9bfe17c5e4b167ad487230a92b9e2fd23eb79c8 /build/stubs
parent9f1eacd67ead8e385e32c829458edf9172bff8d2 (diff)
downloadnextcloud-server-4d390b5f5486c7198d973413ef5f1acc6ac9fc3c.tar.gz
nextcloud-server-4d390b5f5486c7198d973413ef5f1acc6ac9fc3c.zip
Add stubs for Psr\Container to allow running psalm with multiple threads
Signed-off-by: jld3103 <jld3103yt@gmail.com>
Diffstat (limited to 'build/stubs')
-rw-r--r--build/stubs/psr_container.php52
1 files changed, 52 insertions, 0 deletions
diff --git a/build/stubs/psr_container.php b/build/stubs/psr_container.php
new file mode 100644
index 00000000000..a87584c6f3a
--- /dev/null
+++ b/build/stubs/psr_container.php
@@ -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
+{
+}