diff options
Diffstat (limited to 'crates/shirabe/src/downloader/downloader_interface.rs')
| -rw-r--r-- | crates/shirabe/src/downloader/downloader_interface.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crates/shirabe/src/downloader/downloader_interface.rs b/crates/shirabe/src/downloader/downloader_interface.rs index 873438e2..8f2e2c0d 100644 --- a/crates/shirabe/src/downloader/downloader_interface.rs +++ b/crates/shirabe/src/downloader/downloader_interface.rs @@ -3,8 +3,10 @@ use crate::package::PackageInterfaceHandle; use shirabe_php_shim::PhpMixed; +/// `PhpClass` is a supertrait because `DownloadManager::getDownloaderForPackage` reports +/// `get_class($downloader)` in its error message, and Rust has no runtime class name. #[async_trait::async_trait(?Send)] -pub trait DownloaderInterface: std::fmt::Debug { +pub trait DownloaderInterface: std::fmt::Debug + shirabe_php_shim::PhpClass { fn get_installation_source(&self) -> String; async fn download( |
