aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/WebAssembly/Structure/Modules/ElemMode.php
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2024-07-11 02:57:23 +0900
committernsfisis <nsfisis@gmail.com>2024-07-11 02:57:23 +0900
commit26f49b7e27076e689541b9e13a1b54f60a4ee5c2 (patch)
treea3762813c34a384f21ddeed630ddf333a1cc1b05 /src/WebAssembly/Structure/Modules/ElemMode.php
parent326273f20c2d7dfe3d866eb720d1bb914570e3a3 (diff)
downloadphp-waddiwasi-26f49b7e27076e689541b9e13a1b54f60a4ee5c2.tar.gz
php-waddiwasi-26f49b7e27076e689541b9e13a1b54f60a4ee5c2.tar.zst
php-waddiwasi-26f49b7e27076e689541b9e13a1b54f60a4ee5c2.zip
feat: organize namespaces
Diffstat (limited to 'src/WebAssembly/Structure/Modules/ElemMode.php')
-rw-r--r--src/WebAssembly/Structure/Modules/ElemMode.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/WebAssembly/Structure/Modules/ElemMode.php b/src/WebAssembly/Structure/Modules/ElemMode.php
new file mode 100644
index 0000000..0777bd4
--- /dev/null
+++ b/src/WebAssembly/Structure/Modules/ElemMode.php
@@ -0,0 +1,30 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Nsfisis\Waddiwasi\WebAssembly\Structure\Modules;
+
+use Nsfisis\Waddiwasi\WebAssembly\Structure\Instructions\Instr;
+
+abstract readonly class ElemMode
+{
+ final public static function Passive(): ElemModes\Passive
+ {
+ return new ElemModes\Passive();
+ }
+
+ /**
+ * @param list<Instr> $offset
+ */
+ final public static function Active(
+ int $table,
+ array $offset,
+ ): ElemModes\Active {
+ return new ElemModes\Active($table, $offset);
+ }
+
+ final public static function Declarative(): ElemModes\Declarative
+ {
+ return new ElemModes\Declarative();
+ }
+}