Hi,
is there some library or approach how to do transactions in pharo?
And I don't mean database transactions, but directly in memory on Pharo
objects... e.g.
p := Person new.
transaction do: [
p name: 'Nobody'.
p age: 70.
] on: Error do: [
transaction rollback.
].
self assert: p name equals: 'Nobody'.
self assert: p age equals: 70.
transaction do: [
p name: 'Somebody'.
p age: 1 / 0.
] on: Error do: [
transaction rollback.
].
self assert: p name equals: 'Nobody'.
self assert: p age equals: 70.
Any pointers appreciated.
Thanks,
Peter