2 Copyright (C) 2004, The Perl Foundation.
7 src/pmc/stmlog.pmc -- Holds a transaction log that can be replayed
11 This PMC class holds an STM transaction log that can be replayed.
12 Replaying is only guaranteed to be implemented enough to allow
13 choice (Haskell `orElse`) to be implemented.
15 This PMC will copy the current the transaction's log when it
22 #include "parrot/parrot.h"
27 PMC_struct_val(SELF) = Parrot_STM_extract(INTERP);
28 PObj_active_destroy_SET(SELF);
29 PObj_custom_mark_SET(SELF);
32 VTABLE void destroy() {
33 Parrot_STM_destroy_extracted(INTERP, PMC_struct_val(SELF));
37 Parrot_STM_mark_extracted(INTERP, PMC_struct_val(SELF));
40 METHOD void replay() {
41 Parrot_STM_replay_extracted(INTERP, PMC_struct_val(SELF));
47 * c-file-style: "parrot"
49 * vim: expandtab shiftwidth=4: