(ctx: Context)
| 238 | use super::*; |
| 239 | |
| 240 | fn create_transaction_class(ctx: Context) -> Gc<RefLock<Class>> { |
| 241 | let methods = [ |
| 242 | (ctx.intern(b"query"), Value::NativeFunction(NativeFn(query))), |
| 243 | ( |
| 244 | ctx.intern(b"query_as"), |
| 245 | Value::NativeFunction(NativeFn(query_as)), |
| 246 | ), |
| 247 | ( |
| 248 | ctx.intern(b"commit"), |
| 249 | Value::NativeFunction(NativeFn(commit)), |
| 250 | ), |
| 251 | ( |
| 252 | ctx.intern(b"rollback"), |
| 253 | Value::NativeFunction(NativeFn(rollback)), |
| 254 | ), |
| 255 | ] |
| 256 | .into_iter() |
| 257 | .collect(); |
| 258 | Gc::new( |
| 259 | &ctx, |
| 260 | RefLock::new(Class { |
| 261 | name: ctx.intern(b"Transaction"), |
| 262 | methods, |
| 263 | static_methods: HashMap::default(), |
| 264 | }), |
| 265 | ) |
| 266 | } |
| 267 | |
| 268 | pub(super) fn begin_transaction<'gc>( |
| 269 | state: &mut State<'gc>, |
no test coverage detected