Add Throwable Methods

This commit is contained in:
2025-10-25 12:41:47 -04:00
parent 7d3ec0a75f
commit 3e4374b0b9
2 changed files with 17 additions and 3 deletions

View File

@@ -4,9 +4,16 @@ declare(strict_types=1);
namespace Potter\Throwable; namespace Potter\Throwable;
use \Throwable as BaseThrowable;
use \Exception; use \Exception;
abstract class AbstractThrowable extends Exception implements ThrowableInterface abstract class AbstractThrowable extends Exception implements ThrowableInterface
{ {
abstract public function getMessage(): string;
abstract public function getCode(): int;
abstract public function getFile(): string;
abstract public function getLine(): int;
abstract public function getTrace(): array;
abstract public function getTraceAsString(): string;
abstract public function getPrevious(): ?BaseThrowable;
} }

View File

@@ -4,9 +4,16 @@ declare(strict_types=1);
namespace Potter\Throwable; namespace Potter\Throwable;
use \Throwable as BaseThrowable;
use \Potter\Stringable\StringableInterface; use \Potter\Stringable\StringableInterface;
interface ThrowableInterface extends StringableInterface interface ThrowableInterface extends StringableInterface
{ {
public function getMessage(): string;
public function getCode(): int;
public function getFile(): string;
public function getLine(): int;
public function getTrace(): array;
public function getTraceAsString(): string;
public function getPrevious(): ?BaseThrowable;
} }