#21 ✓hold
me (at andresteingress)

cyclic method calls when querying property in class invariant

Reported by me (at andresteingress) | 2011-04-12 18:43:41 UTC | in 1.2.2

@Invariant({ balance >= 0.0 })
class Account {

   protected double balance   

   def withdraw(BigDecimal amount) {
      balance -= amount
      return amount
   }

   BigDecimal getBalance() {
      return balance
   }
}

Comments and changes to this ticket

  • me (at andresteingress)

    me (at andresteingress) 2011-04-14 11:10:14 UTC

    • State changed from “new” to “hold”

    the problem is that getBalance() is user-defined. since it is user-defined it gets injected with a class invariant. the call in the class invariant gets compiled to getBalance() >= 0.0, so a cyclic call occurs.

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

core module

Shared Ticket Bins

People watching this ticket

Pages