First page Back Continue Last page Overview Graphics
@invariant
class Item(object):
@post(“DBItem.find(name)”, globals(), locals())
def __init__(self, name, price):
self.name, self.price = name, price
DBAdd(name, price)
def _invariant(self):
assert self.price >= 0 and len(self.name)
@log
@pre("adjustment < 0")
def adjust_price(self, adjustment):
self.price += adjustment