Changeset 1631
- Timestamp:
- 07/12/07 18:11:21 (1 year ago)
- Files:
-
- gaphas/branches/hw/gaphas/constraint.py (modified) (7 diffs)
- gaphas/branches/hw/gaphas/solver.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphas/branches/hw/gaphas/constraint.py
r1624 r1631 30 30 31 31 import operator 32 from decorators import recursive33 32 34 33 … … 121 120 self.b = b 122 121 123 @recursive(limit=5)124 122 def solve_for(self, var): 125 123 assert var in (self.a, self.b) … … 160 158 self.center = center 161 159 162 @recursive(limit=5)163 160 def solve_for(self, var): 164 161 assert var in (self.a, self.b, self.center) … … 198 195 self.delta = delta 199 196 200 @recursive(limit=5)201 197 def solve_for(self, var): 202 198 if self.smaller.value > self.bigger.value - self.delta: … … 284 280 285 281 286 @recursive(limit=5)287 282 def solve_for(self, var): 288 283 """ … … 386 381 print 'b', self.balance 387 382 388 @recursive(limit=5)389 383 def solve_for(self, var): 390 384 b1, b2 = self.band … … 433 427 434 428 435 @recursive(limit=5)436 429 def solve_for(self, var): 437 430 b1, b2 = self.band gaphas/branches/hw/gaphas/solver.py
r1618 r1631 345 345 else: 346 346 self._marked_cons.append(c) 347 if __debug__: 348 if self._marked_cons.count(c) > 100: 349 raise JuggleError, 'Variable juggling detected, constraint %s' % c 350 347 351 348 352 def request_resolve(self, variable): … … 536 540 537 541 542 543 544 class JuggleError(AssertionError): 545 """ 546 Variable juggling exception. Raised when constraint's variables are 547 marking each other dirty forever. 548 """ 549 550 538 551 __test__ = { 539 552 'Solver.add_constraint': Solver.add_constraint,
