aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--crates/shirabe-php-shim/src/lib.rs24
-rw-r--r--crates/shirabe/src/platform/runtime.rs48
2 files changed, 72 insertions, 0 deletions
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<String> {
+ todo!()
+}
+
+pub fn phpversion(extension: &str) -> Option<String> {
+ todo!()
+}
+
+pub fn ob_start() -> bool {
+ todo!()
+}
+
+pub fn ob_get_clean() -> Option<String> {
+ 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<dyn Fn(Vec<PhpMixed>) -> PhpMixed>, arguments: Vec<PhpMixed>) -> PhpMixed {
+ todo!()
+ }
+
+ pub fn has_class(&self, class: &str) -> bool {
+ todo!()
+ }
+
+ pub fn construct(&self, class: &str, arguments: Vec<PhpMixed>) -> Result<PhpMixed> {
+ todo!()
+ }
+
+ pub fn get_extensions(&self) -> Vec<String> {
+ todo!()
+ }
+
+ pub fn get_extension_version(&self, extension: &str) -> String {
+ todo!()
+ }
+
+ pub fn get_extension_info(&self, extension: &str) -> Result<String> {
+ todo!()
+ }
+
+ pub fn parse_html_extension_info(html: &str) -> String {
+ todo!()
+ }
+}