Contracts in Perl 'Class::Agreement' #11

Contracts in Eiffel

decrement is
    require
        item > 0
    do
        item := item - 1
    ensure
        item = old item - 1
    end 
Copyright © 2005 Ian Langworth