Skip to content

Commit 0104c59

Browse files
feat: enable cairo 2.6.0 contract declaration
* feat: declare cairo2.6.0 contracts * docs: add comment for rpc compatibility * test: resolve cairo1v2 test file parsing error * Update src/utils/hash/classHash.ts --------- Co-authored-by: Petar Penovic <pp@spaceshard.io>
1 parent b992446 commit 0104c59

File tree

9 files changed

+942
-4
lines changed

9 files changed

+942
-4
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Cairo 2.6.0
2+
#[starknet::interface]
3+
trait IHelloStarknet<TContractState> {
4+
fn set_name(ref self: TContractState, name1: felt252);
5+
fn get_name(self: @TContractState) -> felt252;
6+
}
7+
8+
9+
#[starknet::contract]
10+
mod HelloStarknet {
11+
#[storage]
12+
struct Storage {
13+
name: felt252,
14+
}
15+
16+
#[abi(embed_v0)]
17+
impl HelloStarknetImpl of super::IHelloStarknet<ContractState> {
18+
fn set_name(ref self: ContractState, name1: felt252) {
19+
assert(name1 != '', 'Enter a name');
20+
self.name.write(name1);
21+
}
22+
23+
fn get_name(self: @ContractState) -> felt252 {
24+
self.name.read()
25+
}
26+
}
27+
}

0 commit comments

Comments
 (0)