aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe-external-packages/src/seld
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-17 02:25:52 +0900
committernsfisis <nsfisis@gmail.com>2026-05-17 02:25:52 +0900
commit7f606f36fef0c0467c3c0db3d0da33af486dae8a (patch)
treec3f0a3340e1dbfc5245964a775b73030d5abf44e /crates/shirabe-external-packages/src/seld
parent9389ddbf06f6d38445c277640cab7b2270057790 (diff)
downloadphp-shirabe-7f606f36fef0c0467c3c0db3d0da33af486dae8a.tar.gz
php-shirabe-7f606f36fef0c0467c3c0db3d0da33af486dae8a.tar.zst
php-shirabe-7f606f36fef0c0467c3c0db3d0da33af486dae8a.zip
feat(port): add stub implementations of shirabe-external-packages
Diffstat (limited to 'crates/shirabe-external-packages/src/seld')
-rw-r--r--crates/shirabe-external-packages/src/seld/json_lint/duplicate_key_exception.rs13
-rw-r--r--crates/shirabe-external-packages/src/seld/json_lint/json_parser.rs16
-rw-r--r--crates/shirabe-external-packages/src/seld/json_lint/mod.rs3
-rw-r--r--crates/shirabe-external-packages/src/seld/json_lint/parsing_exception.rs13
-rw-r--r--crates/shirabe-external-packages/src/seld/mod.rs3
-rw-r--r--crates/shirabe-external-packages/src/seld/phar_utils/linter.rs8
-rw-r--r--crates/shirabe-external-packages/src/seld/phar_utils/mod.rs2
-rw-r--r--crates/shirabe-external-packages/src/seld/phar_utils/timestamps.rs18
-rw-r--r--crates/shirabe-external-packages/src/seld/signal/mod.rs1
-rw-r--r--crates/shirabe-external-packages/src/seld/signal/signal_handler.rs19
10 files changed, 96 insertions, 0 deletions
diff --git a/crates/shirabe-external-packages/src/seld/json_lint/duplicate_key_exception.rs b/crates/shirabe-external-packages/src/seld/json_lint/duplicate_key_exception.rs
new file mode 100644
index 0000000..9e35396
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/json_lint/duplicate_key_exception.rs
@@ -0,0 +1,13 @@
+#[derive(Debug)]
+pub struct DuplicateKeyException {
+ pub message: String,
+ pub code: i64,
+}
+
+impl std::fmt::Display for DuplicateKeyException {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.message)
+ }
+}
+
+impl std::error::Error for DuplicateKeyException {}
diff --git a/crates/shirabe-external-packages/src/seld/json_lint/json_parser.rs b/crates/shirabe-external-packages/src/seld/json_lint/json_parser.rs
new file mode 100644
index 0000000..6deb13c
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/json_lint/json_parser.rs
@@ -0,0 +1,16 @@
+use shirabe_php_shim::PhpMixed;
+
+#[derive(Debug)]
+pub struct JsonParser;
+
+impl JsonParser {
+ pub const DETECT_KEY_CONFLICTS: u32 = 1;
+
+ pub fn new() -> Self {
+ todo!()
+ }
+
+ pub fn parse(&self, json: &str, flags: u32) -> anyhow::Result<PhpMixed> {
+ todo!()
+ }
+}
diff --git a/crates/shirabe-external-packages/src/seld/json_lint/mod.rs b/crates/shirabe-external-packages/src/seld/json_lint/mod.rs
new file mode 100644
index 0000000..fef5a26
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/json_lint/mod.rs
@@ -0,0 +1,3 @@
+pub mod duplicate_key_exception;
+pub mod json_parser;
+pub mod parsing_exception;
diff --git a/crates/shirabe-external-packages/src/seld/json_lint/parsing_exception.rs b/crates/shirabe-external-packages/src/seld/json_lint/parsing_exception.rs
new file mode 100644
index 0000000..3ec6b6b
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/json_lint/parsing_exception.rs
@@ -0,0 +1,13 @@
+#[derive(Debug)]
+pub struct ParsingException {
+ pub message: String,
+ pub code: i64,
+}
+
+impl std::fmt::Display for ParsingException {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "{}", self.message)
+ }
+}
+
+impl std::error::Error for ParsingException {}
diff --git a/crates/shirabe-external-packages/src/seld/mod.rs b/crates/shirabe-external-packages/src/seld/mod.rs
new file mode 100644
index 0000000..c7b1cd4
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/mod.rs
@@ -0,0 +1,3 @@
+pub mod json_lint;
+pub mod phar_utils;
+pub mod signal;
diff --git a/crates/shirabe-external-packages/src/seld/phar_utils/linter.rs b/crates/shirabe-external-packages/src/seld/phar_utils/linter.rs
new file mode 100644
index 0000000..d879c7d
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/phar_utils/linter.rs
@@ -0,0 +1,8 @@
+#[derive(Debug)]
+pub struct Linter;
+
+impl Linter {
+ pub fn lint(file: &str, php_versions: &[String]) -> anyhow::Result<()> {
+ todo!()
+ }
+}
diff --git a/crates/shirabe-external-packages/src/seld/phar_utils/mod.rs b/crates/shirabe-external-packages/src/seld/phar_utils/mod.rs
new file mode 100644
index 0000000..82049a8
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/phar_utils/mod.rs
@@ -0,0 +1,2 @@
+pub mod linter;
+pub mod timestamps;
diff --git a/crates/shirabe-external-packages/src/seld/phar_utils/timestamps.rs b/crates/shirabe-external-packages/src/seld/phar_utils/timestamps.rs
new file mode 100644
index 0000000..d2e1be9
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/phar_utils/timestamps.rs
@@ -0,0 +1,18 @@
+#[derive(Debug)]
+pub struct Timestamps {
+ file: String,
+}
+
+impl Timestamps {
+ pub fn new(file: &str) -> Self {
+ todo!()
+ }
+
+ pub fn update_timestamps(&mut self, date: &str) -> anyhow::Result<()> {
+ todo!()
+ }
+
+ pub fn save(&self, file: &str, format: i64) -> anyhow::Result<()> {
+ todo!()
+ }
+}
diff --git a/crates/shirabe-external-packages/src/seld/signal/mod.rs b/crates/shirabe-external-packages/src/seld/signal/mod.rs
new file mode 100644
index 0000000..61f69bd
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/signal/mod.rs
@@ -0,0 +1 @@
+pub mod signal_handler;
diff --git a/crates/shirabe-external-packages/src/seld/signal/signal_handler.rs b/crates/shirabe-external-packages/src/seld/signal/signal_handler.rs
new file mode 100644
index 0000000..c592fc5
--- /dev/null
+++ b/crates/shirabe-external-packages/src/seld/signal/signal_handler.rs
@@ -0,0 +1,19 @@
+#[derive(Debug)]
+pub struct SignalHandler;
+
+impl SignalHandler {
+ pub const SIGINT: &'static str = "SIGINT";
+ pub const SIGTERM: &'static str = "SIGTERM";
+ pub const SIGHUP: &'static str = "SIGHUP";
+
+ pub fn create(
+ signals: Vec<String>,
+ callback: Box<dyn Fn(String, &SignalHandler)>,
+ ) -> Self {
+ todo!()
+ }
+
+ pub fn unregister(&self) {
+ todo!()
+ }
+}