Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
 
3
namespace Spatie\Ignition\Contracts;
4
 
5
use Throwable;
6
 
7
interface SolutionProviderRepository
8
{
9
    /**
10
     * @param class-string<HasSolutionsForThrowable>|HasSolutionsForThrowable $solutionProvider
11
     *
12
     * @return $this
13
     */
14
    public function registerSolutionProvider(string $solutionProvider): self;
15
 
16
    /**
17
     * @param array<class-string<HasSolutionsForThrowable>|HasSolutionsForThrowable> $solutionProviders
18
     *
19
     * @return $this
20
     */
21
    public function registerSolutionProviders(array $solutionProviders): self;
22
 
23
    /**
24
     * @param Throwable $throwable
25
     *
26
     * @return array<int, Solution>
27
     */
28
    public function getSolutionsForThrowable(Throwable $throwable): array;
29
 
30
    /**
31
     * @param class-string<Solution> $solutionClass
32
     *
33
     * @return null|Solution
34
     */
35
    public function getSolutionForClass(string $solutionClass): ?Solution;
36
}