|
58 | 58 | //! // Define a contracttrait with default implementations that require RequireAdmin |
59 | 59 | //! #[contracttrait] |
60 | 60 | //! pub trait Pausable: RequireAdmin { |
61 | | -//! const PAUSED: &'static str = "paused"; |
62 | | -//! |
63 | 61 | //! fn is_paused(env: &Env) -> bool { |
64 | | -//! env.storage().instance().has(&Self::PAUSED) |
| 62 | +//! env.storage().instance().has(&"paused") |
65 | 63 | //! } |
66 | 64 | //! |
67 | 65 | //! fn pause(env: &Env) { |
68 | 66 | //! Self::require_admin(env); |
69 | | -//! env.storage().instance().set(&Self::PAUSED, &true); |
| 67 | +//! env.storage().instance().set(&"paused", &true); |
70 | 68 | //! } |
71 | 69 | //! |
72 | 70 | //! fn unpause(env: &Env) { |
73 | 71 | //! Self::require_admin(env); |
74 | | -//! env.storage().instance().remove(&Self::PAUSED); |
| 72 | +//! env.storage().instance().remove(&"paused"); |
75 | 73 | //! } |
76 | 74 | //! } |
77 | 75 | //! |
78 | 76 | //! #[contract] |
79 | 77 | //! pub struct MyContract; |
80 | 78 | //! |
81 | | -//! const ADMIN: &str = "admin"; |
82 | | -//! |
83 | 79 | //! impl RequireAdmin for MyContract { |
84 | 80 | //! fn require_admin(env: &Env) { |
85 | | -//! let admin: Address = env.storage().instance().get(&ADMIN).unwrap(); |
| 81 | +//! let admin: Address = env.storage().instance().get(&"admin").unwrap(); |
86 | 82 | //! admin.require_auth(); |
87 | 83 | //! } |
88 | 84 | //! } |
|
94 | 90 | //! #[contractimpl] |
95 | 91 | //! impl MyContract { |
96 | 92 | //! pub fn __constructor(env: &Env, admin: Address) { |
97 | | -//! env.storage().instance().set(&ADMIN, &admin); |
| 93 | +//! env.storage().instance().set(&"admin", &admin); |
98 | 94 | //! } |
99 | 95 | //! |
100 | 96 | //! pub fn do_something(env: &Env) { |
|
122 | 118 | //! // Define a contracttrait with default implementations that require RequireAdmin |
123 | 119 | //! #[contracttrait] |
124 | 120 | //! pub trait Pausable: RequireAdmin { |
125 | | -//! const PAUSED: &'static str = "paused"; |
126 | | -//! |
127 | 121 | //! fn is_paused(env: &Env) -> bool { |
128 | | -//! env.storage().instance().has(&Self::PAUSED) |
| 122 | +//! env.storage().instance().has(&"paused") |
129 | 123 | //! } |
130 | 124 | //! |
131 | 125 | //! fn pause(env: &Env) { |
132 | 126 | //! Self::require_admin(env); |
133 | | -//! env.storage().instance().set(&Self::PAUSED, &true); |
| 127 | +//! env.storage().instance().set(&"paused", &true); |
134 | 128 | //! } |
135 | 129 | //! |
136 | 130 | //! fn unpause(env: &Env) { |
137 | 131 | //! Self::require_admin(env); |
138 | | -//! env.storage().instance().remove(&Self::PAUSED); |
| 132 | +//! env.storage().instance().remove(&"paused"); |
139 | 133 | //! } |
140 | 134 | //! } |
141 | 135 | //! |
142 | 136 | //! #[contract] |
143 | 137 | //! pub struct MyContract; |
144 | 138 | //! |
145 | | -//! const ADMIN: &str = "admin"; |
146 | | -//! |
147 | 139 | //! impl RequireAdmin for MyContract { |
148 | 140 | //! fn require_admin(env: &Env) { |
149 | | -//! let admin: Address = env.storage().instance().get(&ADMIN).unwrap(); |
| 141 | +//! let admin: Address = env.storage().instance().get(&"admin").unwrap(); |
150 | 142 | //! admin.require_auth(); |
151 | 143 | //! } |
152 | 144 | //! } |
|
156 | 148 | //! impl Pausable for MyContract { |
157 | 149 | //! // Override is_paused with custom logic that returns false when not set |
158 | 150 | //! fn is_paused(env: &Env) -> bool { |
159 | | -//! env.storage().instance().get(&Self::PAUSED).unwrap_or(false) |
| 151 | +//! env.storage().instance().get(&"paused").unwrap_or(false) |
160 | 152 | //! } |
161 | 153 | //! // pause() and unpause() use the default implementations |
162 | 154 | //! } |
163 | 155 | //! |
164 | 156 | //! #[contractimpl] |
165 | 157 | //! impl MyContract { |
166 | 158 | //! pub fn __constructor(env: &Env, admin: Address) { |
167 | | -//! env.storage().instance().set(&ADMIN, &admin); |
| 159 | +//! env.storage().instance().set(&"admin", &admin); |
168 | 160 | //! } |
169 | 161 | //! |
170 | 162 | //! pub fn do_something(env: &Env) { |
|
192 | 184 | //! // Define a contracttrait with default implementations that require RequireAdmin |
193 | 185 | //! #[contracttrait] |
194 | 186 | //! pub trait Pausable: RequireAdmin { |
195 | | -//! const PAUSED: &'static str = "paused"; |
196 | | -//! |
197 | 187 | //! fn is_paused(env: &Env) -> bool { |
198 | | -//! env.storage().instance().has(&Self::PAUSED) |
| 188 | +//! env.storage().instance().has(&"paused") |
199 | 189 | //! } |
200 | 190 | //! |
201 | 191 | //! fn pause(env: &Env) { |
202 | 192 | //! Self::require_admin(env); |
203 | | -//! env.storage().instance().set(&Self::PAUSED, &true); |
| 193 | +//! env.storage().instance().set(&"paused", &true); |
204 | 194 | //! } |
205 | 195 | //! |
206 | 196 | //! fn unpause(env: &Env) { |
207 | 197 | //! Self::require_admin(env); |
208 | | -//! env.storage().instance().remove(&Self::PAUSED); |
| 198 | +//! env.storage().instance().remove(&"paused"); |
209 | 199 | //! } |
210 | 200 | //! } |
211 | 201 | //! |
212 | 202 | //! #[contract] |
213 | 203 | //! pub struct MyContract; |
214 | 204 | //! |
215 | | -//! const ADMIN: &str = "admin"; |
216 | | -//! |
217 | 205 | //! impl RequireAdmin for MyContract { |
218 | 206 | //! fn require_admin(env: &Env) { |
219 | | -//! let admin: Address = env.storage().instance().get(&ADMIN).unwrap(); |
| 207 | +//! let admin: Address = env.storage().instance().get(&"admin").unwrap(); |
220 | 208 | //! admin.require_auth(); |
221 | 209 | //! } |
222 | 210 | //! } |
|
228 | 216 | //! #[contractimpl] |
229 | 217 | //! impl MyContract { |
230 | 218 | //! pub fn __constructor(env: &Env, admin: Address) { |
231 | | -//! env.storage().instance().set(&ADMIN, &admin); |
| 219 | +//! env.storage().instance().set(&"admin", &admin); |
232 | 220 | //! } |
233 | 221 | //! |
234 | 222 | //! pub fn do_something(env: &Env) { |
|
0 commit comments