summaryrefslogtreecommitdiffhomepage
path: root/plugins/tokenize-ja/src/lib.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-10-20 02:32:55 +0900
committernsfisis <nsfisis@gmail.com>2025-10-26 22:47:53 +0900
commit751f595ff1d2142688dc833b4a7ec3e643a5c8a9 (patch)
tree17a32750558e2493f4998dd0341f37647c322b80 /plugins/tokenize-ja/src/lib.rs
parent5201520a74d8fa49f77a588204d768d8157f73f7 (diff)
downloadphpstudy-180-slides-751f595ff1d2142688dc833b4a7ec3e643a5c8a9.tar.gz
phpstudy-180-slides-751f595ff1d2142688dc833b4a7ec3e643a5c8a9.tar.zst
phpstudy-180-slides-751f595ff1d2142688dc833b4a7ec3e643a5c8a9.zip
draft2
Diffstat (limited to 'plugins/tokenize-ja/src/lib.rs')
-rw-r--r--plugins/tokenize-ja/src/lib.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/plugins/tokenize-ja/src/lib.rs b/plugins/tokenize-ja/src/lib.rs
new file mode 100644
index 0000000..fb58250
--- /dev/null
+++ b/plugins/tokenize-ja/src/lib.rs
@@ -0,0 +1,20 @@
+use ciborium::ser::into_writer;
+use wasm_minimal_protocol::*;
+
+initiate_protocol!();
+
+mod tokenize;
+
+#[wasm_func]
+pub fn init() -> Result<Vec<u8>, anyhow::Error> {
+ tokenize::init()?;
+ Ok(Vec::new())
+}
+
+#[wasm_func]
+pub fn tokenize(text: &[u8]) -> Result<Vec<u8>, anyhow::Error> {
+ let result = tokenize::tokenize(str::from_utf8(text)?)?;
+ let mut out = Vec::new();
+ into_writer(&result, &mut out)?;
+ Ok(out)
+}