WebAssembly - Trabajar con Rust
Para obtener el código de compilación de RUST, haremos uso de la herramienta WebAssembly.studio.
Vaya a WebAssembly.studio que está disponible en Ir ahttps://webassembly.studio/ y le mostrará la pantalla como se muestra a continuación:
Haga clic en Empty Rust Project. Una vez hecho esto, obtendrá tres archivos en la carpeta src / -
Abra el archivo main.rs y cambie el código de su elección.
Estoy agregando la siguiente función que agregará dos números dados:
fn add_ints(lhs: i32, rhs: i32) -> i32 {
lhs+rhs
}
El código disponible en main.rs es el siguiente:
#[no_mangle]
pub extern "C" fn add_one(x: i32) -> i32 {
x + 1
}
Reemplace el fn add_one con el suyo como se muestra a continuación:
#[no_mangle]
pub extern "C" fn add_ints(lhs: i32, rhs: i32) -> i32 {
lhs+rhs
}
En main.js, cambie el nombre de la función de add_one a add_ints
fetch('../out/main.wasm').then(
response =>
response.arrayBuffer()
).then(bytes => WebAssembly.instantiate(bytes)).then(results => {
instance = results.instance;
document.getElementById("container").textContent = instance.exports.add_one(41);
}).catch(console.error);
Reemplace instance.exports.add_one por instance.exports.add_ints (100,100)
fetch('../out/main.wasm').then(
response =>
response.arrayBuffer()
).then(bytes => WebAssembly.instantiate(bytes)).then(results => {
instance = results.instance;
document.getElementById("container").textContent = instance.exports.add_ints(100,100)
}).catch(console.error);
Haga clic en el botón de compilación disponible en la interfaz de usuario de webassembly.studio para compilar el código.
Una vez finalizada la compilación, haga clic en el botón Ejecutar disponible en la interfaz de usuario para ver el resultado:
Obtenemos la salida como 200, ya que pasamos instance.exports.add_ints (100,100).
De manera similar, puede escribir un programa diferente para rust y compilarlo en webassembly.studio.