ruv-swarm
Version:
High-performance neural network swarm orchestration in WebAssembly
1,559 lines (1,450 loc) • 71.4 kB
JavaScript
let wasm;
const heap = new Array(128).fill(undefined);
heap.push(undefined, null, true, false);
function getObject(idx) { return heap[idx]; }
let heap_next = heap.length;
function addHeapObject(obj) {
if (heap_next === heap.length) heap.push(heap.length + 1);
const idx = heap_next;
heap_next = heap[idx];
heap[idx] = obj;
return idx;
}
function handleError(f, args) {
try {
return f.apply(this, args);
} catch (e) {
wasm.__wbindgen_export_0(addHeapObject(e));
}
}
const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );
if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };
let cachedUint8ArrayMemory0 = null;
function getUint8ArrayMemory0() {
if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
}
return cachedUint8ArrayMemory0;
}
function getStringFromWasm0(ptr, len) {
ptr = ptr >>> 0;
return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
}
let WASM_VECTOR_LEN = 0;
const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );
const encodeString = (typeof cachedTextEncoder.encodeInto === 'function'
? function (arg, view) {
return cachedTextEncoder.encodeInto(arg, view);
}
: function (arg, view) {
const buf = cachedTextEncoder.encode(arg);
view.set(buf);
return {
read: arg.length,
written: buf.length
};
});
function passStringToWasm0(arg, malloc, realloc) {
if (realloc === undefined) {
const buf = cachedTextEncoder.encode(arg);
const ptr = malloc(buf.length, 1) >>> 0;
getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
WASM_VECTOR_LEN = buf.length;
return ptr;
}
let len = arg.length;
let ptr = malloc(len, 1) >>> 0;
const mem = getUint8ArrayMemory0();
let offset = 0;
for (; offset < len; offset++) {
const code = arg.charCodeAt(offset);
if (code > 0x7F) break;
mem[ptr + offset] = code;
}
if (offset !== len) {
if (offset !== 0) {
arg = arg.slice(offset);
}
ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
const ret = encodeString(arg, view);
offset += ret.written;
ptr = realloc(ptr, len, offset, 1) >>> 0;
}
WASM_VECTOR_LEN = offset;
return ptr;
}
let cachedDataViewMemory0 = null;
function getDataViewMemory0() {
if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
}
return cachedDataViewMemory0;
}
function isLikeNone(x) {
return x === undefined || x === null;
}
function debugString(val) {
// primitive types
const type = typeof val;
if (type == 'number' || type == 'boolean' || val == null) {
return `${val}`;
}
if (type == 'string') {
return `"${val}"`;
}
if (type == 'symbol') {
const description = val.description;
if (description == null) {
return 'Symbol';
} else {
return `Symbol(${description})`;
}
}
if (type == 'function') {
const name = val.name;
if (typeof name == 'string' && name.length > 0) {
return `Function(${name})`;
} else {
return 'Function';
}
}
// objects
if (Array.isArray(val)) {
const length = val.length;
let debug = '[';
if (length > 0) {
debug += debugString(val[0]);
}
for(let i = 1; i < length; i++) {
debug += ', ' + debugString(val[i]);
}
debug += ']';
return debug;
}
// Test for built-in
const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
let className;
if (builtInMatches && builtInMatches.length > 1) {
className = builtInMatches[1];
} else {
// Failed to match the standard '[object ClassName]'
return toString.call(val);
}
if (className == 'Object') {
// we're a user defined class or Object
// JSON.stringify avoids problems with cycles, and is generally much
// easier than looping through ownProperties of `val`.
try {
return 'Object(' + JSON.stringify(val) + ')';
} catch (_) {
return 'Object';
}
}
// errors
if (val instanceof Error) {
return `${val.name}: ${val.message}\n${val.stack}`;
}
// TODO we could test for more things here, like `Set`s and `Map`s.
return className;
}
function dropObject(idx) {
if (idx < 132) return;
heap[idx] = heap_next;
heap_next = idx;
}
function takeObject(idx) {
const ret = getObject(idx);
dropObject(idx);
return ret;
}
function getArrayU8FromWasm0(ptr, len) {
ptr = ptr >>> 0;
return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
}
function passArray8ToWasm0(arg, malloc) {
const ptr = malloc(arg.length * 1, 1) >>> 0;
getUint8ArrayMemory0().set(arg, ptr / 1);
WASM_VECTOR_LEN = arg.length;
return ptr;
}
let cachedFloat32ArrayMemory0 = null;
function getFloat32ArrayMemory0() {
if (cachedFloat32ArrayMemory0 === null || cachedFloat32ArrayMemory0.byteLength === 0) {
cachedFloat32ArrayMemory0 = new Float32Array(wasm.memory.buffer);
}
return cachedFloat32ArrayMemory0;
}
function passArrayF32ToWasm0(arg, malloc) {
const ptr = malloc(arg.length * 4, 4) >>> 0;
getFloat32ArrayMemory0().set(arg, ptr / 4);
WASM_VECTOR_LEN = arg.length;
return ptr;
}
function getArrayF32FromWasm0(ptr, len) {
ptr = ptr >>> 0;
return getFloat32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);
}
/**
* SIMD feature detection and runtime capabilities
* @returns {string}
*/
export function detect_simd_capabilities() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.detect_simd_capabilities(retptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @returns {string}
*/
export function run_simd_verification_suite() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.run_simd_verification_suite(retptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @param {number} size
* @param {number} iterations
* @returns {string}
*/
export function simd_performance_report(size, iterations) {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.simd_performance_report(retptr, size, iterations);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* Comprehensive SIMD feature validation
* @returns {boolean}
*/
export function validate_simd_implementation() {
const ret = wasm.validate_simd_implementation();
return ret !== 0;
}
let stack_pointer = 128;
function addBorrowedObject(obj) {
if (stack_pointer == 1) throw new Error('out of js stack');
heap[--stack_pointer] = obj;
return stack_pointer;
}
/**
* @param {any} array
* @returns {Float32Array}
*/
export function js_array_to_vec_f32(array) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.js_array_to_vec_f32(retptr, addBorrowedObject(array));
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
if (r3) {
throw takeObject(r2);
}
var v1 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v1;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
heap[stack_pointer++] = undefined;
}
}
/**
* @param {Float32Array} vec
* @returns {Float32Array}
*/
export function vec_f32_to_js_array(vec) {
const ptr0 = passArrayF32ToWasm0(vec, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.vec_f32_to_js_array(ptr0, len0);
return takeObject(ret);
}
/**
* @returns {bigint}
*/
export function get_wasm_memory_usage() {
const ret = wasm.get_wasm_memory_usage();
return BigInt.asUintN(64, ret);
}
/**
* @param {string} message
*/
export function console_log(message) {
const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.console_log(ptr0, len0);
}
/**
* @param {string} message
*/
export function console_error(message) {
const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.console_error(ptr0, len0);
}
/**
* @param {string} message
*/
export function console_warn(message) {
const ptr0 = passStringToWasm0(message, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.console_warn(ptr0, len0);
}
/**
* @param {any} error
* @returns {string}
*/
export function format_js_error(error) {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.format_js_error(retptr, addHeapObject(error));
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
export function init() {
wasm.init();
}
let cachedUint32ArrayMemory0 = null;
function getUint32ArrayMemory0() {
if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {
cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);
}
return cachedUint32ArrayMemory0;
}
function passArray32ToWasm0(arg, malloc) {
const ptr = malloc(arg.length * 4, 4) >>> 0;
getUint32ArrayMemory0().set(arg, ptr / 4);
WASM_VECTOR_LEN = arg.length;
return ptr;
}
let cachedFloat64ArrayMemory0 = null;
function getFloat64ArrayMemory0() {
if (cachedFloat64ArrayMemory0 === null || cachedFloat64ArrayMemory0.byteLength === 0) {
cachedFloat64ArrayMemory0 = new Float64Array(wasm.memory.buffer);
}
return cachedFloat64ArrayMemory0;
}
function passArrayF64ToWasm0(arg, malloc) {
const ptr = malloc(arg.length * 8, 8) >>> 0;
getFloat64ArrayMemory0().set(arg, ptr / 8);
WASM_VECTOR_LEN = arg.length;
return ptr;
}
function getArrayF64FromWasm0(ptr, len) {
ptr = ptr >>> 0;
return getFloat64ArrayMemory0().subarray(ptr / 8, ptr / 8 + len);
}
function getArrayJsValueFromWasm0(ptr, len) {
ptr = ptr >>> 0;
const mem = getDataViewMemory0();
const result = [];
for (let i = ptr; i < ptr + 4 * len; i += 4) {
result.push(takeObject(mem.getUint32(i, true)));
}
return result;
}
/**
* @param {Uint32Array} layers
* @param {ActivationFunction} activation
* @returns {WasmNeuralNetwork}
*/
export function create_neural_network(layers, activation) {
const ptr0 = passArray32ToWasm0(layers, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.create_neural_network(ptr0, len0, activation);
return WasmNeuralNetwork.__wrap(ret);
}
/**
* @param {string} topology
* @returns {WasmSwarmOrchestrator}
*/
export function create_swarm_orchestrator(topology) {
const ptr0 = passStringToWasm0(topology, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.create_swarm_orchestrator(ptr0, len0);
return WasmSwarmOrchestrator.__wrap(ret);
}
/**
* @param {string} model_type
* @returns {WasmForecastingModel}
*/
export function create_forecasting_model(model_type) {
const ptr0 = passStringToWasm0(model_type, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.create_forecasting_model(ptr0, len0);
return WasmForecastingModel.__wrap(ret);
}
/**
* @returns {string}
*/
export function get_version() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.get_version(retptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @returns {string}
*/
export function get_features() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.get_features(retptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17}
*/
export const ActivationFunction = Object.freeze({
Linear: 0, "0": "Linear",
Sigmoid: 1, "1": "Sigmoid",
SymmetricSigmoid: 2, "2": "SymmetricSigmoid",
Tanh: 3, "3": "Tanh",
ReLU: 4, "4": "ReLU",
LeakyReLU: 5, "5": "LeakyReLU",
Swish: 6, "6": "Swish",
Gaussian: 7, "7": "Gaussian",
Elliot: 8, "8": "Elliot",
SymmetricElliot: 9, "9": "SymmetricElliot",
Sine: 10, "10": "Sine",
Cosine: 11, "11": "Cosine",
SinSymmetric: 12, "12": "SinSymmetric",
CosSymmetric: 13, "13": "CosSymmetric",
ThresholdSymmetric: 14, "14": "ThresholdSymmetric",
Threshold: 15, "15": "Threshold",
StepSymmetric: 16, "16": "StepSymmetric",
Step: 17, "17": "Step",
});
const AgentMemoryPoolFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_agentmemorypool_free(ptr >>> 0, 1));
/**
* Agent memory pool specifically optimized for neural network agents
*/
export class AgentMemoryPool {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
AgentMemoryPoolFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_agentmemorypool_free(ptr, 0);
}
constructor() {
const ret = wasm.agentmemorypool_new();
this.__wbg_ptr = ret >>> 0;
AgentMemoryPoolFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* Allocate memory for an agent based on complexity
* @param {string} complexity
* @returns {Uint8Array | undefined}
*/
allocate_for_agent(complexity) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passStringToWasm0(complexity, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.agentmemorypool_allocate_for_agent(retptr, this.__wbg_ptr, ptr0, len0);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
let v2;
if (r0 !== 0) {
v2 = getArrayU8FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 1, 1);
}
return v2;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* Return agent memory to the appropriate pool
* @param {Uint8Array} memory
*/
deallocate_agent_memory(memory) {
const ptr0 = passArray8ToWasm0(memory, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
wasm.agentmemorypool_deallocate_agent_memory(this.__wbg_ptr, ptr0, len0);
}
/**
* Get total memory usage across all pools
* @returns {number}
*/
total_memory_usage_mb() {
const ret = wasm.agentmemorypool_total_memory_usage_mb(this.__wbg_ptr);
return ret;
}
/**
* Check if memory usage is within target (< 50MB for 10 agents)
* @returns {boolean}
*/
is_within_memory_target() {
const ret = wasm.agentmemorypool_is_within_memory_target(this.__wbg_ptr);
return ret !== 0;
}
}
const MemoryPoolFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_memorypool_free(ptr >>> 0, 1));
/**
* Memory pool for efficient memory management
*/
export class MemoryPool {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
MemoryPoolFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_memorypool_free(ptr, 0);
}
/**
* Create a new memory pool with specified block size and maximum blocks
* @param {number} block_size
* @param {number} max_blocks
*/
constructor(block_size, max_blocks) {
const ret = wasm.memorypool_new(block_size, max_blocks);
this.__wbg_ptr = ret >>> 0;
MemoryPoolFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* Allocate a memory block from the pool
* @returns {Uint8Array | undefined}
*/
allocate() {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.memorypool_allocate(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
let v1;
if (r0 !== 0) {
v1 = getArrayU8FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 1, 1);
}
return v1;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* Return a memory block to the pool for reuse
* @param {Uint8Array} block
*/
deallocate(block) {
const ptr0 = passArray8ToWasm0(block, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
wasm.memorypool_deallocate(this.__wbg_ptr, ptr0, len0);
}
/**
* Get the number of available blocks in the pool
* @returns {number}
*/
available_blocks() {
const ret = wasm.memorypool_available_blocks(this.__wbg_ptr);
return ret >>> 0;
}
/**
* Get total memory usage in bytes
* @returns {number}
*/
memory_usage() {
const ret = wasm.memorypool_memory_usage(this.__wbg_ptr);
return ret >>> 0;
}
/**
* Get pool efficiency metrics
* @returns {PoolMetrics}
*/
get_metrics() {
const ret = wasm.memorypool_get_metrics(this.__wbg_ptr);
return PoolMetrics.__wrap(ret);
}
}
const OptimizedAgentFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_optimizedagent_free(ptr >>> 0, 1));
export class OptimizedAgent {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
OptimizedAgentFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_optimizedagent_free(ptr, 0);
}
}
const OptimizedAgentSpawnerFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_optimizedagentspawner_free(ptr >>> 0, 1));
export class OptimizedAgentSpawner {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
OptimizedAgentSpawnerFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_optimizedagentspawner_free(ptr, 0);
}
constructor() {
const ret = wasm.optimizedagentspawner_new();
this.__wbg_ptr = ret >>> 0;
OptimizedAgentSpawnerFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @param {string} agent_type
* @param {string} complexity
* @returns {string}
*/
spawn_agent(agent_type, complexity) {
let deferred4_0;
let deferred4_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passStringToWasm0(agent_type, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passStringToWasm0(complexity, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len1 = WASM_VECTOR_LEN;
wasm.optimizedagentspawner_spawn_agent(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
var ptr3 = r0;
var len3 = r1;
if (r3) {
ptr3 = 0; len3 = 0;
throw takeObject(r2);
}
deferred4_0 = ptr3;
deferred4_1 = len3;
return getStringFromWasm0(ptr3, len3);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred4_0, deferred4_1, 1);
}
}
/**
* @param {string} agent_id
*/
release_agent(agent_id) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passStringToWasm0(agent_id, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.optimizedagentspawner_release_agent(retptr, this.__wbg_ptr, ptr0, len0);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
if (r1) {
throw takeObject(r0);
}
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* @returns {string}
*/
get_performance_report() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.optimizedagentspawner_get_performance_report(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @returns {number}
*/
get_active_agent_count() {
const ret = wasm.optimizedagentspawner_get_active_agent_count(this.__wbg_ptr);
return ret >>> 0;
}
/**
* @returns {boolean}
*/
is_within_memory_target() {
const ret = wasm.optimizedagentspawner_is_within_memory_target(this.__wbg_ptr);
return ret !== 0;
}
}
const PerformanceMonitorFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_performancemonitor_free(ptr >>> 0, 1));
export class PerformanceMonitor {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
PerformanceMonitorFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_performancemonitor_free(ptr, 0);
}
constructor() {
const ret = wasm.performancemonitor_new();
this.__wbg_ptr = ret >>> 0;
PerformanceMonitorFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @param {number} time
*/
record_load_time(time) {
wasm.performancemonitor_record_load_time(this.__wbg_ptr, time);
}
/**
* @param {number} time
*/
record_spawn_time(time) {
wasm.performancemonitor_record_spawn_time(this.__wbg_ptr, time);
}
/**
* @param {number} bytes
*/
update_memory_usage(bytes) {
wasm.performancemonitor_update_memory_usage(this.__wbg_ptr, bytes);
}
/**
* @returns {number}
*/
get_average_spawn_time() {
const ret = wasm.performancemonitor_get_average_spawn_time(this.__wbg_ptr);
return ret;
}
/**
* @returns {number}
*/
get_memory_usage_mb() {
const ret = wasm.performancemonitor_get_memory_usage_mb(this.__wbg_ptr);
return ret;
}
/**
* @returns {boolean}
*/
meets_performance_targets() {
const ret = wasm.performancemonitor_meets_performance_targets(this.__wbg_ptr);
return ret !== 0;
}
/**
* @returns {string}
*/
get_report() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.performancemonitor_get_report(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
}
const PerformanceTimerFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_performancetimer_free(ptr >>> 0, 1));
export class PerformanceTimer {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
PerformanceTimerFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_performancetimer_free(ptr, 0);
}
/**
* @param {string} name
*/
constructor(name) {
const ptr0 = passStringToWasm0(name, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.performancetimer_new(ptr0, len0);
this.__wbg_ptr = ret >>> 0;
PerformanceTimerFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @returns {number}
*/
elapsed() {
const ret = wasm.performancetimer_elapsed(this.__wbg_ptr);
return ret;
}
log() {
wasm.performancetimer_log(this.__wbg_ptr);
}
}
const PoolMetricsFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_poolmetrics_free(ptr >>> 0, 1));
/**
* Pool metrics for monitoring
*/
export class PoolMetrics {
static __wrap(ptr) {
ptr = ptr >>> 0;
const obj = Object.create(PoolMetrics.prototype);
obj.__wbg_ptr = ptr;
PoolMetricsFinalization.register(obj, obj.__wbg_ptr, obj);
return obj;
}
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
PoolMetricsFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_poolmetrics_free(ptr, 0);
}
/**
* @returns {number}
*/
get total_blocks() {
const ret = wasm.__wbg_get_poolmetrics_total_blocks(this.__wbg_ptr);
return ret >>> 0;
}
/**
* @param {number} arg0
*/
set total_blocks(arg0) {
wasm.__wbg_set_poolmetrics_total_blocks(this.__wbg_ptr, arg0);
}
/**
* @returns {number}
*/
get free_blocks() {
const ret = wasm.__wbg_get_poolmetrics_free_blocks(this.__wbg_ptr);
return ret >>> 0;
}
/**
* @param {number} arg0
*/
set free_blocks(arg0) {
wasm.__wbg_set_poolmetrics_free_blocks(this.__wbg_ptr, arg0);
}
/**
* @returns {number}
*/
get block_size() {
const ret = wasm.__wbg_get_poolmetrics_block_size(this.__wbg_ptr);
return ret >>> 0;
}
/**
* @param {number} arg0
*/
set block_size(arg0) {
wasm.__wbg_set_poolmetrics_block_size(this.__wbg_ptr, arg0);
}
/**
* @returns {number}
*/
get reuse_count() {
const ret = wasm.__wbg_get_poolmetrics_reuse_count(this.__wbg_ptr);
return ret >>> 0;
}
/**
* @param {number} arg0
*/
set reuse_count(arg0) {
wasm.__wbg_set_poolmetrics_reuse_count(this.__wbg_ptr, arg0);
}
/**
* @returns {number}
*/
get memory_usage_mb() {
const ret = wasm.__wbg_get_poolmetrics_memory_usage_mb(this.__wbg_ptr);
return ret;
}
/**
* @param {number} arg0
*/
set memory_usage_mb(arg0) {
wasm.__wbg_set_poolmetrics_memory_usage_mb(this.__wbg_ptr, arg0);
}
}
const RuntimeFeaturesFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_runtimefeatures_free(ptr >>> 0, 1));
export class RuntimeFeatures {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
RuntimeFeaturesFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_runtimefeatures_free(ptr, 0);
}
constructor() {
const ret = wasm.runtimefeatures_new();
this.__wbg_ptr = ret >>> 0;
RuntimeFeaturesFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @returns {boolean}
*/
get simd_available() {
const ret = wasm.runtimefeatures_simd_available(this.__wbg_ptr);
return ret !== 0;
}
/**
* @returns {boolean}
*/
get threads_available() {
const ret = wasm.runtimefeatures_threads_available(this.__wbg_ptr);
return ret !== 0;
}
/**
* @returns {bigint}
*/
get memory_limit() {
const ret = wasm.runtimefeatures_memory_limit(this.__wbg_ptr);
return BigInt.asUintN(64, ret);
}
/**
* @returns {string}
*/
get_features_json() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.runtimefeatures_get_features_json(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
}
const SimdBenchmarkFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_simdbenchmark_free(ptr >>> 0, 1));
/**
* Performance benchmarking utilities
*/
export class SimdBenchmark {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
SimdBenchmarkFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_simdbenchmark_free(ptr, 0);
}
constructor() {
const ret = wasm.simdbenchmark_new();
this.__wbg_ptr = ret >>> 0;
SimdBenchmarkFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* Benchmark SIMD vs scalar dot product
* @param {number} size
* @param {number} iterations
* @returns {string}
*/
benchmark_dot_product(size, iterations) {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.simdbenchmark_benchmark_dot_product(retptr, this.__wbg_ptr, size, iterations);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* Benchmark SIMD vs scalar activation functions
* @param {number} size
* @param {number} iterations
* @param {string} activation
* @returns {string}
*/
benchmark_activation(size, iterations, activation) {
let deferred2_0;
let deferred2_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passStringToWasm0(activation, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.simdbenchmark_benchmark_activation(retptr, this.__wbg_ptr, size, iterations, ptr0, len0);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred2_0 = r0;
deferred2_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred2_0, deferred2_1, 1);
}
}
}
const SimdMatrixOpsFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_simdmatrixops_free(ptr >>> 0, 1));
/**
* SIMD-accelerated matrix operations
*/
export class SimdMatrixOps {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
SimdMatrixOpsFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_simdmatrixops_free(ptr, 0);
}
constructor() {
const ret = wasm.simdbenchmark_new();
this.__wbg_ptr = ret >>> 0;
SimdMatrixOpsFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* SIMD-optimized matrix-vector multiplication
* @param {Float32Array} matrix
* @param {Float32Array} vector
* @param {number} rows
* @param {number} cols
* @returns {Float32Array}
*/
matrix_vector_multiply(matrix, vector, rows, cols) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF32ToWasm0(matrix, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passArrayF32ToWasm0(vector, wasm.__wbindgen_export_2);
const len1 = WASM_VECTOR_LEN;
wasm.simdmatrixops_matrix_vector_multiply(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, rows, cols);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v3 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v3;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* SIMD-optimized matrix-matrix multiplication (small matrices)
* @param {Float32Array} a
* @param {Float32Array} b
* @param {number} a_rows
* @param {number} a_cols
* @param {number} b_cols
* @returns {Float32Array}
*/
matrix_multiply(a, b, a_rows, a_cols, b_cols) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF32ToWasm0(a, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passArrayF32ToWasm0(b, wasm.__wbindgen_export_2);
const len1 = WASM_VECTOR_LEN;
wasm.simdmatrixops_matrix_multiply(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, a_rows, a_cols, b_cols);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v3 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v3;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
}
const SimdVectorOpsFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_simdvectorops_free(ptr >>> 0, 1));
/**
* SIMD-accelerated vector operations
*/
export class SimdVectorOps {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
SimdVectorOpsFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_simdvectorops_free(ptr, 0);
}
constructor() {
const ret = wasm.simdbenchmark_new();
this.__wbg_ptr = ret >>> 0;
SimdVectorOpsFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* SIMD-optimized vector dot product
* @param {Float32Array} a
* @param {Float32Array} b
* @returns {number}
*/
dot_product(a, b) {
const ptr0 = passArrayF32ToWasm0(a, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passArrayF32ToWasm0(b, wasm.__wbindgen_export_2);
const len1 = WASM_VECTOR_LEN;
const ret = wasm.simdvectorops_dot_product(this.__wbg_ptr, ptr0, len0, ptr1, len1);
return ret;
}
/**
* SIMD-optimized vector addition
* @param {Float32Array} a
* @param {Float32Array} b
* @returns {Float32Array}
*/
vector_add(a, b) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF32ToWasm0(a, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passArrayF32ToWasm0(b, wasm.__wbindgen_export_2);
const len1 = WASM_VECTOR_LEN;
wasm.simdvectorops_vector_add(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v3 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v3;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* SIMD-optimized vector scaling
* @param {Float32Array} vec
* @param {number} scalar
* @returns {Float32Array}
*/
vector_scale(vec, scalar) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF32ToWasm0(vec, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
wasm.simdvectorops_vector_scale(retptr, this.__wbg_ptr, ptr0, len0, scalar);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v2 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v2;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* SIMD-optimized activation function application
* @param {Float32Array} vec
* @param {string} activation
* @returns {Float32Array}
*/
apply_activation(vec, activation) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF32ToWasm0(vec, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passStringToWasm0(activation, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len1 = WASM_VECTOR_LEN;
wasm.simdvectorops_apply_activation(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v3 = getArrayF32FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 4, 4);
return v3;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
}
const WasmAgentFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_wasmagent_free(ptr >>> 0, 1));
export class WasmAgent {
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
WasmAgentFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_wasmagent_free(ptr, 0);
}
/**
* @param {string} id
* @param {string} agent_type
*/
constructor(id, agent_type) {
const ptr0 = passStringToWasm0(id, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ptr1 = passStringToWasm0(agent_type, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len1 = WASM_VECTOR_LEN;
const ret = wasm.wasmagent_new(ptr0, len0, ptr1, len1);
this.__wbg_ptr = ret >>> 0;
WasmAgentFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @returns {string}
*/
get id() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.wasmagent_id(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @returns {string}
*/
get agent_type() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.wasmagent_agent_type(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @returns {string}
*/
get status() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.wasmagent_status(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(deferred1_0, deferred1_1, 1);
}
}
/**
* @param {string} status
*/
set_status(status) {
const ptr0 = passStringToWasm0(status, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.wasmagent_set_status(this.__wbg_ptr, ptr0, len0);
}
/**
* @param {string} capability
*/
add_capability(capability) {
const ptr0 = passStringToWasm0(capability, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
wasm.wasmagent_add_capability(this.__wbg_ptr, ptr0, len0);
}
/**
* @param {string} capability
* @returns {boolean}
*/
has_capability(capability) {
const ptr0 = passStringToWasm0(capability, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.wasmagent_has_capability(this.__wbg_ptr, ptr0, len0);
return ret !== 0;
}
}
const WasmForecastingModelFinalization = (typeof FinalizationRegistry === 'undefined')
? { register: () => {}, unregister: () => {} }
: new FinalizationRegistry(ptr => wasm.__wbg_wasmforecastingmodel_free(ptr >>> 0, 1));
export class WasmForecastingModel {
static __wrap(ptr) {
ptr = ptr >>> 0;
const obj = Object.create(WasmForecastingModel.prototype);
obj.__wbg_ptr = ptr;
WasmForecastingModelFinalization.register(obj, obj.__wbg_ptr, obj);
return obj;
}
__destroy_into_raw() {
const ptr = this.__wbg_ptr;
this.__wbg_ptr = 0;
WasmForecastingModelFinalization.unregister(this);
return ptr;
}
free() {
const ptr = this.__destroy_into_raw();
wasm.__wbg_wasmforecastingmodel_free(ptr, 0);
}
/**
* @param {string} model_type
*/
constructor(model_type) {
const ptr0 = passStringToWasm0(model_type, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3);
const len0 = WASM_VECTOR_LEN;
const ret = wasm.create_forecasting_model(ptr0, len0);
this.__wbg_ptr = ret >>> 0;
WasmForecastingModelFinalization.register(this, this.__wbg_ptr, this);
return this;
}
/**
* @param {Float64Array} input
* @returns {Float64Array}
*/
predict(input) {
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
const ptr0 = passArrayF64ToWasm0(input, wasm.__wbindgen_export_2);
const len0 = WASM_VECTOR_LEN;
wasm.wasmforecastingmodel_predict(retptr, this.__wbg_ptr, ptr0, len0);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
var v2 = getArrayF64FromWasm0(r0, r1).slice();
wasm.__wbindgen_export_1(r0, r1 * 8, 8);
return v2;
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
}
}
/**
* @returns {string}
*/
get_model_type() {
let deferred1_0;
let deferred1_1;
try {
const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
wasm.wasmforecastingmodel_get_model_type(retptr, this.__wbg_ptr);
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
deferred1_0 = r0;
deferred1_1 = r1;
return getStringFromWasm0(r0, r1);
} finally {
wasm.__wbindgen_add_to_stack_pointer(16);
wasm.__wbindgen_export_1(defer