aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-12 03:08:17 +0900
committernsfisis <nsfisis@gmail.com>2026-05-12 03:08:33 +0900
commit15cdbfe580a7b4c2175eee82ae30b81adeb06bb6 (patch)
treee03a914a10574d6325bedef680f36cb1475b2b1d /crates
parent38c86ad0e6e6862c68f278d922a9c1d4afba737c (diff)
downloadphp-shirabe-15cdbfe580a7b4c2175eee82ae30b81adeb06bb6.tar.gz
php-shirabe-15cdbfe580a7b4c2175eee82ae30b81adeb06bb6.tar.zst
php-shirabe-15cdbfe580a7b4c2175eee82ae30b81adeb06bb6.zip
feat(port): port PearRepository.php
Diffstat (limited to 'crates')
-rw-r--r--crates/shirabe-php-shim/src/lib.rs6
-rw-r--r--crates/shirabe/src/repository/pear_repository.rs17
2 files changed, 23 insertions, 0 deletions
diff --git a/crates/shirabe-php-shim/src/lib.rs b/crates/shirabe-php-shim/src/lib.rs
index df2a0c3..2d662d6 100644
--- a/crates/shirabe-php-shim/src/lib.rs
+++ b/crates/shirabe-php-shim/src/lib.rs
@@ -28,3 +28,9 @@ pub struct UnexpectedValueException {
pub message: String,
pub code: i64,
}
+
+#[derive(Debug)]
+pub struct InvalidArgumentException {
+ pub message: String,
+ pub code: i64,
+}
diff --git a/crates/shirabe/src/repository/pear_repository.rs b/crates/shirabe/src/repository/pear_repository.rs
index e66a543..6ee4db7 100644
--- a/crates/shirabe/src/repository/pear_repository.rs
+++ b/crates/shirabe/src/repository/pear_repository.rs
@@ -1 +1,18 @@
//! ref: composer/src/Composer/Repository/PearRepository.php
+
+use super::array_repository::ArrayRepository;
+use shirabe_php_shim::InvalidArgumentException;
+
+#[derive(Debug)]
+pub struct PearRepository {
+ inner: ArrayRepository,
+}
+
+impl PearRepository {
+ pub fn new() -> anyhow::Result<Self> {
+ Err(anyhow::anyhow!(InvalidArgumentException {
+ message: "The PEAR repository has been removed from Composer 2.x".to_string(),
+ code: 0,
+ }))
+ }
+}