You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 13, 2025. It is now read-only.
let create_mint_a = system_instruction::create_account(&context.payer.pubkey(),&mint_a.pubkey(), mint_rent, mint_len asu64,&token_program);
58
-
let initialize_mint_ix = spl_token::instruction::initialize_mint(&token_program,&mint_a.pubkey(),&mint_authority.pubkey(),None,6).unwrap();
59
-
66
+
let create_mint_a = system_instruction::create_account(
67
+
&context.payer.pubkey(),
68
+
&mint_a.pubkey(),
69
+
mint_rent,
70
+
mint_len asu64,
71
+
&token_program,
72
+
);
73
+
let initialize_mint_ix = spl_token::instruction::initialize_mint(
74
+
&token_program,
75
+
&mint_a.pubkey(),
76
+
&mint_authority.pubkey(),
77
+
None,
78
+
6,
79
+
)
80
+
.unwrap();
81
+
60
82
// Create a mint 2 with a freeze authority
61
83
let mint_b = Keypair::new();
62
84
let freeze_authority = Pubkey::new_unique();
63
-
let create_mint_b = system_instruction::create_account(&context.payer.pubkey(),&mint_b.pubkey(), mint_rent, mint_len asu64,&token_program);
64
-
let initialize_mint_with_freeze_authority_ix = spl_token::instruction::initialize_mint2(&token_program,&mint_b.pubkey(),&mint_authority.pubkey(),Some(&freeze_authority),6).unwrap();
85
+
let create_mint_b = system_instruction::create_account(
86
+
&context.payer.pubkey(),
87
+
&mint_b.pubkey(),
88
+
mint_rent,
89
+
mint_len asu64,
90
+
&token_program,
91
+
);
92
+
let initialize_mint_with_freeze_authority_ix = spl_token::instruction::initialize_mint2(
93
+
&token_program,
94
+
&mint_b.pubkey(),
95
+
&mint_authority.pubkey(),
96
+
Some(&freeze_authority),
97
+
6,
98
+
)
99
+
.unwrap();
65
100
66
101
// Create 2 token accounts for mint A and 1 for mint B
let create_owner_a_ta_a = system_instruction::create_account(&context.payer.pubkey(),&owner_a_ta_a.pubkey(), account_rent, account_len asu64,&token_program);
74
-
let create_owner_b_ta_a = system_instruction::create_account(&context.payer.pubkey(),&owner_b_ta_a.pubkey(), account_rent, account_len asu64,&token_program);
75
-
let intialize_owner_a_ta_a = spl_token::instruction::initialize_account3(&token_program,&owner_a_ta_a.pubkey(),&mint_a.pubkey(),&owner_a.pubkey()).unwrap();
76
-
let intialize_owner_a_ta_b = spl_token::instruction::initialize_account3(&token_program,&owner_a_ta_b.pubkey(),&mint_b.pubkey(),&owner_a.pubkey()).unwrap();
77
-
let intialize_owner_b_ta_a = spl_token::instruction::initialize_account3(&token_program,&owner_b_ta_a.pubkey(),&mint_a.pubkey(),&owner_b.pubkey()).unwrap();
108
+
let create_owner_a_ta_a = system_instruction::create_account(
109
+
&context.payer.pubkey(),
110
+
&owner_a_ta_a.pubkey(),
111
+
account_rent,
112
+
account_len asu64,
113
+
&token_program,
114
+
);
115
+
let create_owner_b_ta_a = system_instruction::create_account(
116
+
&context.payer.pubkey(),
117
+
&owner_b_ta_a.pubkey(),
118
+
account_rent,
119
+
account_len asu64,
120
+
&token_program,
121
+
);
122
+
let intialize_owner_a_ta_a = spl_token::instruction::initialize_account3(
123
+
&token_program,
124
+
&owner_a_ta_a.pubkey(),
125
+
&mint_a.pubkey(),
126
+
&owner_a.pubkey(),
127
+
)
128
+
.unwrap();
129
+
let intialize_owner_a_ta_b = spl_token::instruction::initialize_account3(
130
+
&token_program,
131
+
&owner_a_ta_b.pubkey(),
132
+
&mint_b.pubkey(),
133
+
&owner_a.pubkey(),
134
+
)
135
+
.unwrap();
136
+
let intialize_owner_b_ta_a = spl_token::instruction::initialize_account3(
137
+
&token_program,
138
+
&owner_b_ta_a.pubkey(),
139
+
&mint_a.pubkey(),
140
+
&owner_b.pubkey(),
141
+
)
142
+
.unwrap();
78
143
79
144
// Mint Token A to Owner A
80
-
let mint_token_a_to_owner_a = spl_token::instruction::mint_to(&token_program,&mint_a.pubkey(),&owner_a_ta_a.pubkey(),&mint_authority.pubkey(),&[],1_000_000).unwrap();
145
+
let mint_token_a_to_owner_a = spl_token::instruction::mint_to(
146
+
&token_program,
147
+
&mint_a.pubkey(),
148
+
&owner_a_ta_a.pubkey(),
149
+
&mint_authority.pubkey(),
150
+
&[],
151
+
1_000_000,
152
+
)
153
+
.unwrap();
81
154
82
155
// Transfer Token A from Owner A to Owner B
83
-
let transfer_token_a_to_owner_b = spl_token::instruction::transfer(&token_program,&owner_a_ta_a.pubkey(),&owner_b_ta_a.pubkey(),&owner_a.pubkey(),&[],1_000_000).unwrap();
156
+
let transfer_token_a_to_owner_b = spl_token::instruction::transfer(
157
+
&token_program,
158
+
&owner_a_ta_a.pubkey(),
159
+
&owner_b_ta_a.pubkey(),
160
+
&owner_a.pubkey(),
161
+
&[],
162
+
1_000_000,
163
+
)
164
+
.unwrap();
84
165
85
166
// Close Token A
86
-
let close_owner_a_ta_a = spl_token::instruction::close_account(&token_program,&owner_a_ta_a.pubkey(),&owner_a.pubkey(),&owner_a.pubkey(),&[]).unwrap();
167
+
let close_owner_a_ta_a = spl_token::instruction::close_account(
0 commit comments