diff --git a/sdk/stdlib-sys/src/intrinsics/word.rs b/sdk/stdlib-sys/src/intrinsics/word.rs index af7e96211..2e0f242f0 100644 --- a/sdk/stdlib-sys/src/intrinsics/word.rs +++ b/sdk/stdlib-sys/src/intrinsics/word.rs @@ -86,3 +86,12 @@ impl AsRef for Word { self } } + +impl Default for Word { + /// Creates a new `Word` with all four field elements set to zero. + fn default() -> Self { + Self { + inner: (felt!(0), felt!(0), felt!(0), felt!(0)), + } + } +} diff --git a/tests/integration/src/rust_masm_tests/rust_sdk/base/account.rs b/tests/integration/src/rust_masm_tests/rust_sdk/base/account.rs index 550b1c4c4..77f319493 100644 --- a/tests/integration/src/rust_masm_tests/rust_sdk/base/account.rs +++ b/tests/integration/src/rust_masm_tests/rust_sdk/base/account.rs @@ -192,7 +192,7 @@ fn rust_sdk_account_has_procedure_binding() { run_account_binding_test( "rust_sdk_account_has_procedure_binding", "pub fn binding(&self) -> Felt { - let proc_root = Word::from([Felt::from_u32(0); 4]); + let proc_root = Word::default(); if self.has_procedure(proc_root) { Felt::from_u32(1) } else { @@ -207,7 +207,7 @@ fn rust_sdk_account_was_procedure_called_binding() { run_account_binding_test( "rust_sdk_account_was_procedure_called_binding", "pub fn binding(&self) -> Felt { - let proc_root = Word::from([Felt::from_u32(0); 4]); + let proc_root = Word::default(); if self.was_procedure_called(proc_root) { Felt::from_u32(1) } else { @@ -232,7 +232,7 @@ fn rust_sdk_account_storage_get_initial_map_item_binding() { run_account_binding_test( "rust_sdk_account_storage_get_initial_map_item_binding", "pub fn binding(&self) -> Word { - let key = Word::from([Felt::from_u32(0); 4]); + let key = Word::default(); storage::get_initial_map_item(0, &key) }", ); diff --git a/tests/integration/src/rust_masm_tests/rust_sdk/base/asset.rs b/tests/integration/src/rust_masm_tests/rust_sdk/base/asset.rs index ae862303c..b3ea00f94 100644 --- a/tests/integration/src/rust_masm_tests/rust_sdk/base/asset.rs +++ b/tests/integration/src/rust_masm_tests/rust_sdk/base/asset.rs @@ -88,7 +88,7 @@ fn rust_sdk_account_asset_build_non_fungible_asset_binding() { "rust_sdk_account_asset_build_non_fungible_asset_binding", "pub fn binding(&self) -> Asset { let faucet = AccountId { prefix: Felt::from_u32(1), suffix: Felt::from_u32(0) }; - let hash = Word::from([Felt::from_u32(0); 4]); + let hash = Word::default(); asset::build_non_fungible_asset(faucet, hash) }", ); diff --git a/tests/integration/src/rust_masm_tests/rust_sdk/base/faucet.rs b/tests/integration/src/rust_masm_tests/rust_sdk/base/faucet.rs index 50c87fcee..bd69b561e 100644 --- a/tests/integration/src/rust_masm_tests/rust_sdk/base/faucet.rs +++ b/tests/integration/src/rust_masm_tests/rust_sdk/base/faucet.rs @@ -86,7 +86,7 @@ fn rust_sdk_account_faucet_create_non_fungible_asset_binding() { run_faucet_binding_test( "rust_sdk_account_faucet_create_non_fungible_asset_binding", "pub fn binding(&self) -> Asset { - let hash = Word::from([Felt::from_u32(0); 4]); + let hash = Word::default(); faucet::create_non_fungible_asset(hash) }", );