From 8142c4b61eef2047148b331550a413e532e7bd33 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 15 May 2026 23:02:16 +0900 Subject: feat(port): port Runtime.php --- crates/shirabe-php-shim/src/lib.rs | 24 +++++++++++++++++ crates/shirabe/src/platform/runtime.rs | 48 ++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) (limited to 'crates') diff --git a/crates/shirabe-php-shim/src/lib.rs b/crates/shirabe-php-shim/src/lib.rs index e85f665..ad408ec 100644 --- a/crates/shirabe-php-shim/src/lib.rs +++ b/crates/shirabe-php-shim/src/lib.rs @@ -493,3 +493,27 @@ pub fn array_merge(array1: PhpMixed, array2: PhpMixed) -> PhpMixed { pub fn substr_replace(string: &str, replace: &str, start: usize, length: usize) -> String { todo!() } + +pub fn constant(name: &str) -> PhpMixed { + todo!() +} + +pub fn get_loaded_extensions() -> Vec { + todo!() +} + +pub fn phpversion(extension: &str) -> Option { + todo!() +} + +pub fn ob_start() -> bool { + todo!() +} + +pub fn ob_get_clean() -> Option { + todo!() +} + +pub fn html_entity_decode(s: &str) -> String { + todo!() +} diff --git a/crates/shirabe/src/platform/runtime.rs b/crates/shirabe/src/platform/runtime.rs index 246774c..4c9c3f5 100644 --- a/crates/shirabe/src/platform/runtime.rs +++ b/crates/shirabe/src/platform/runtime.rs @@ -1 +1,49 @@ //! ref: composer/src/Composer/Platform/Runtime.php + +use anyhow::Result; +use shirabe_php_shim::PhpMixed; + +#[derive(Debug)] +pub struct Runtime; + +impl Runtime { + pub fn has_constant(&self, constant_name: &str, class: Option<&str>) -> bool { + todo!() + } + + pub fn get_constant(&self, constant_name: &str, class: Option<&str>) -> PhpMixed { + todo!() + } + + pub fn has_function(&self, f: &str) -> bool { + todo!() + } + + pub fn invoke(&self, callable: Box) -> PhpMixed>, arguments: Vec) -> PhpMixed { + todo!() + } + + pub fn has_class(&self, class: &str) -> bool { + todo!() + } + + pub fn construct(&self, class: &str, arguments: Vec) -> Result { + todo!() + } + + pub fn get_extensions(&self) -> Vec { + todo!() + } + + pub fn get_extension_version(&self, extension: &str) -> String { + todo!() + } + + pub fn get_extension_info(&self, extension: &str) -> Result { + todo!() + } + + pub fn parse_html_extension_info(html: &str) -> String { + todo!() + } +} -- cgit v1.3.1