From 05ab0906d6e0fe79711d5610b2bfcbf416d7c832 Mon Sep 17 00:00:00 2001 From: Joeri Exelmans Date: Tue, 4 Nov 2025 10:02:59 +0100 Subject: [PATCH] wrote wasm binding for eval_boolean function - let's see if it works --- Cargo.lock | 50 ++++++++++++++ Cargo.toml | 4 ++ pkg/argus_wasm.d.ts | 20 ++++-- pkg/argus_wasm.js | 72 +++++++++++++++---- pkg/argus_wasm_bg.wasm | Bin 356664 -> 425341 bytes pkg/argus_wasm_bg.wasm.d.ts | 6 +- src/lib.rs | 133 +++++++++++++++++++++++++++++++----- 7 files changed, 251 insertions(+), 34 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 01e6ec5..960095a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -70,6 +70,10 @@ name = "argus-wasm" version = "0.1.4" dependencies = [ "argus", + "js-sys", + "serde", + "serde-wasm-bindgen", + "serde_json", "wasm-bindgen", ] @@ -176,6 +180,22 @@ dependencies = [ "either", ] +[[package]] +name = "itoa" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + +[[package]] +name = "js-sys" +version = "0.3.82" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + [[package]] name = "libc" version = "0.2.177" @@ -284,6 +304,12 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" +[[package]] +name = "ryu" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" + [[package]] name = "semver" version = "1.0.27" @@ -300,6 +326,17 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-wasm-bindgen" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + [[package]] name = "serde_core" version = "1.0.228" @@ -320,6 +357,19 @@ dependencies = [ "syn", ] +[[package]] +name = "serde_json" +version = "1.0.145" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +dependencies = [ + "itoa", + "memchr", + "ryu", + "serde", + "serde_core", +] + [[package]] name = "shlex" version = "1.3.0" diff --git a/Cargo.toml b/Cargo.toml index b66f034..715d852 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,5 +7,9 @@ crate-type = ["cdylib"] [dependencies] argus = { git = "https://deemz.org/git/research/argus.git", branch = "dev" } +js-sys = "0.3.82" +serde = { version = "1.0.228", features = ["derive"] } +serde-wasm-bindgen = "0.6.5" +serde_json = "1.0.145" wasm-bindgen = "0.2.105" diff --git a/pkg/argus_wasm.d.ts b/pkg/argus_wasm.d.ts index e0ca6ca..84fbd5a 100644 --- a/pkg/argus_wasm.d.ts +++ b/pkg/argus_wasm.d.ts @@ -1,7 +1,17 @@ /* tslint:disable */ /* eslint-disable */ -export function parse_str(s: string): WrappedExpr; -export class WrappedExpr { +export function eval_boolean(s: string, trace: StateBuddyTrace): StateBuddyEvalResult; +export class StateBuddyEvalResult { + private constructor(); + free(): void; + [Symbol.dispose](): void; +} +export class StateBuddyEvalResultEntry { + private constructor(); + free(): void; + [Symbol.dispose](): void; +} +export class StateBuddyTrace { private constructor(); free(): void; [Symbol.dispose](): void; @@ -11,8 +21,10 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl export interface InitOutput { readonly memory: WebAssembly.Memory; - readonly __wbg_wrappedexpr_free: (a: number, b: number) => void; - readonly parse_str: (a: number, b: number) => number; + readonly __wbg_statebuddytrace_free: (a: number, b: number) => void; + readonly eval_boolean: (a: number, b: number, c: number) => number; + readonly __wbg_statebuddyevalresultentry_free: (a: number, b: number) => void; + readonly __wbg_statebuddyevalresult_free: (a: number, b: number) => void; readonly __wbindgen_externrefs: WebAssembly.Table; readonly __wbindgen_malloc: (a: number, b: number) => number; readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; diff --git a/pkg/argus_wasm.js b/pkg/argus_wasm.js index 24de4f3..4c6a17a 100644 --- a/pkg/argus_wasm.js +++ b/pkg/argus_wasm.js @@ -83,44 +83,92 @@ function passStringToWasm0(arg, malloc, realloc) { WASM_VECTOR_LEN = offset; return ptr; } + +function _assertClass(instance, klass) { + if (!(instance instanceof klass)) { + throw new Error(`expected instance of ${klass.name}`); + } +} /** * @param {string} s - * @returns {WrappedExpr} + * @param {StateBuddyTrace} trace + * @returns {StateBuddyEvalResult} */ -export function parse_str(s) { +export function eval_boolean(s, trace) { const ptr0 = passStringToWasm0(s, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len0 = WASM_VECTOR_LEN; - const ret = wasm.parse_str(ptr0, len0); - return WrappedExpr.__wrap(ret); + _assertClass(trace, StateBuddyTrace); + const ret = wasm.eval_boolean(ptr0, len0, trace.__wbg_ptr); + return StateBuddyEvalResult.__wrap(ret); } -const WrappedExprFinalization = (typeof FinalizationRegistry === 'undefined') +const StateBuddyEvalResultFinalization = (typeof FinalizationRegistry === 'undefined') ? { register: () => {}, unregister: () => {} } - : new FinalizationRegistry(ptr => wasm.__wbg_wrappedexpr_free(ptr >>> 0, 1)); + : new FinalizationRegistry(ptr => wasm.__wbg_statebuddyevalresult_free(ptr >>> 0, 1)); -export class WrappedExpr { +export class StateBuddyEvalResult { static __wrap(ptr) { ptr = ptr >>> 0; - const obj = Object.create(WrappedExpr.prototype); + const obj = Object.create(StateBuddyEvalResult.prototype); obj.__wbg_ptr = ptr; - WrappedExprFinalization.register(obj, obj.__wbg_ptr, obj); + StateBuddyEvalResultFinalization.register(obj, obj.__wbg_ptr, obj); return obj; } __destroy_into_raw() { const ptr = this.__wbg_ptr; this.__wbg_ptr = 0; - WrappedExprFinalization.unregister(this); + StateBuddyEvalResultFinalization.unregister(this); return ptr; } free() { const ptr = this.__destroy_into_raw(); - wasm.__wbg_wrappedexpr_free(ptr, 0); + wasm.__wbg_statebuddyevalresult_free(ptr, 0); } } -if (Symbol.dispose) WrappedExpr.prototype[Symbol.dispose] = WrappedExpr.prototype.free; +if (Symbol.dispose) StateBuddyEvalResult.prototype[Symbol.dispose] = StateBuddyEvalResult.prototype.free; + +const StateBuddyEvalResultEntryFinalization = (typeof FinalizationRegistry === 'undefined') + ? { register: () => {}, unregister: () => {} } + : new FinalizationRegistry(ptr => wasm.__wbg_statebuddyevalresultentry_free(ptr >>> 0, 1)); + +export class StateBuddyEvalResultEntry { + + __destroy_into_raw() { + const ptr = this.__wbg_ptr; + this.__wbg_ptr = 0; + StateBuddyEvalResultEntryFinalization.unregister(this); + return ptr; + } + + free() { + const ptr = this.__destroy_into_raw(); + wasm.__wbg_statebuddyevalresultentry_free(ptr, 0); + } +} +if (Symbol.dispose) StateBuddyEvalResultEntry.prototype[Symbol.dispose] = StateBuddyEvalResultEntry.prototype.free; + +const StateBuddyTraceFinalization = (typeof FinalizationRegistry === 'undefined') + ? { register: () => {}, unregister: () => {} } + : new FinalizationRegistry(ptr => wasm.__wbg_statebuddytrace_free(ptr >>> 0, 1)); + +export class StateBuddyTrace { + + __destroy_into_raw() { + const ptr = this.__wbg_ptr; + this.__wbg_ptr = 0; + StateBuddyTraceFinalization.unregister(this); + return ptr; + } + + free() { + const ptr = this.__destroy_into_raw(); + wasm.__wbg_statebuddytrace_free(ptr, 0); + } +} +if (Symbol.dispose) StateBuddyTrace.prototype[Symbol.dispose] = StateBuddyTrace.prototype.free; const EXPECTED_RESPONSE_TYPES = new Set(['basic', 'cors', 'default']); diff --git a/pkg/argus_wasm_bg.wasm b/pkg/argus_wasm_bg.wasm index 0880b614ad7915e426f84abb1e9d32211ad7a05d..be31eb7fd600c98c235eb766a6fb9ad2ff3ab7da 100644 GIT binary patch delta 152899 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 K;_2Q6tZxC^Rk0HQ delta 86654 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

n2Xi4NP0wPrWMrOxF^koiao%*%Y*qt! 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 QF2LY;;L)M!^)+n&0QoGpdH?_b diff --git a/pkg/argus_wasm_bg.wasm.d.ts b/pkg/argus_wasm_bg.wasm.d.ts index 2d215e3..9d3e585 100644 --- a/pkg/argus_wasm_bg.wasm.d.ts +++ b/pkg/argus_wasm_bg.wasm.d.ts @@ -1,8 +1,10 @@ /* tslint:disable */ /* eslint-disable */ export const memory: WebAssembly.Memory; -export const __wbg_wrappedexpr_free: (a: number, b: number) => void; -export const parse_str: (a: number, b: number) => number; +export const __wbg_statebuddytrace_free: (a: number, b: number) => void; +export const eval_boolean: (a: number, b: number, c: number) => number; +export const __wbg_statebuddyevalresultentry_free: (a: number, b: number) => void; +export const __wbg_statebuddyevalresult_free: (a: number, b: number) => void; export const __wbindgen_externrefs: WebAssembly.Table; export const __wbindgen_malloc: (a: number, b: number) => number; export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; diff --git a/src/lib.rs b/src/lib.rs index 800e5c8..d92bc9f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,33 +1,134 @@ extern crate wasm_bindgen; extern crate argus; +extern crate serde_json; +extern crate js_sys; +extern crate serde; use wasm_bindgen::prelude::*; -use argus::expr::Expr; -// use chumsky::prelude::Rich; +use argus::expr::{Expr}; +use argus::{Trace, Signal, AnySignal, BooleanSemantics}; +use argus::signals::interpolation; +use std::collections::HashMap; +use std::vec; +use serde::{Serialize, Deserialize}; +use std::time::Duration; +// #[wasm_bindgen] +// pub struct WrappedExpr { +// expr: Expr, +// } -// macro_rules! wasmbind_fn { -// ($name:ident($($arg:ident: $t:ty),*) -> $ret:ty) => { -// #[wasm_bindgen] -// pub fn $name($($arg: $t),*) -> $ret { -// my_lib::$name($($arg),*) -// } +// #[wasm_bindgen] +// pub fn parse_str(s: &str) -> WrappedExpr { +// let expr = argus::parse_str(s); +// return WrappedExpr{ +// expr: expr.expect("fuck!!!!"), // }; // } -// wasmbind_fn!(parse_str(s: &str) -> Result>>); +struct TraceMap<'a> { + events: HashMap<&'a str, Signal>, +} -#[wasm_bindgen] -pub struct WrappedExpr { - expr: Expr, +impl<'a> Trace for TraceMap<'a> { + fn signal_names(&self) -> Vec<&str> { + self.events.keys().cloned().collect() + } + + fn get(&self, name: &str) -> Option<&Signal> { + let sig: &dyn AnySignal = match self.events.get(name) { + Some(signal) => signal, + None => return None, + }; + sig.as_any().downcast_ref::>() + } +} + + + +// type MyTrace = Vec +// struct MyResult { +// ok: , +// } + +// pub struct DefaultFalse; + +// use argus::signals::{InterpolationMethod, Sample}; + +// use argus::core::utils::Neighborhood; + +// impl InterpolationMethod for DefaultFalse { +// fn at(a: &super::Sample, b: &super::Sample, time: std::time::Duration) -> Option { +// if time == a.time { +// Some(a.value) +// } +// else if time == b.time { +// Some(b.value) +// } +// else { +// Some(false) +// } +// } + +// fn find_intersection(_a: &Neighborhood, _b: &Neighborhood) -> Option> { +// None +// } +// } + +#[derive(Serialize, Deserialize)] +pub struct StateBuddyTraceEntry { + simtime: f64, + inputEvent: String, + outputEvents: Vec, } #[wasm_bindgen] -pub fn parse_str(s: &str) -> WrappedExpr { - let expr = argus::parse_str(s); - return WrappedExpr{ - expr: expr.expect("fuck!!!!"), +pub struct StateBuddyTrace { + entries: Vec, +} + + +#[wasm_bindgen] +pub fn eval_boolean(s: &str, trace: &StateBuddyTrace) -> StateBuddyEvalResult { + let mut traceMap = HashMap::<&str, Signal>::new(); + for entry in &trace.entries { + let value = traceMap.entry(entry.inputEvent.as_str()).or_insert_with(|| Signal::::Sampled { + values: vec![], + time_points: vec![], + }); + if let Signal::::Sampled { values, time_points } = value { + values.push(true); + time_points.push(Duration::from_millis(entry.simtime as u64)); + } + else { + panic!("fuck!!!"); + } + } + + let parse_result = argus::parse_str(s); + let expr = parse_result.expect("fuuuckk!!"); + let eval_result = match expr { + Expr::Bool(bool_expr) => BooleanSemantics::eval::(&bool_expr, &TraceMap{events: traceMap}), + _ => panic!("fuuuck"), }; + let mut result = Vec::::new(); + eval_result.expect("fuuuck").iter().for_each(|(timestamp, satisfied), | { + result.push(StateBuddyEvalResultEntry{ + timestamp: timestamp.as_millis() as f64, + satisfied: *satisfied, + }); + }); + StateBuddyEvalResult { entries: result } } +#[wasm_bindgen] +pub struct StateBuddyEvalResultEntry { + timestamp: f64, + satisfied: bool, +} + +#[wasm_bindgen] +pub struct StateBuddyEvalResult { + entries: Vec, +}