Next: , Up: CHR Debugging   [Contents][Index]


10.8.4.1 Ports

For CHR constraints the four standard ports are defined:

call

A new constraint is called and becomes active.

exit

An active constraint exits: it has either been inserted in the store after trying all rules or has been removed from the constraint store.

fail

An active constraint fails.

redo

An active constraint starts looking for an alternative solution.

In addition to the above ports, CHR constraints have five additional ports:

wake

A suspended constraint is woken and becomes active.

insert

An active constraint has tried all rules and is suspended in the constraint store.

remove

An active or passive constraint is removed from the constraint store.

try

An active constraints tries a rule with possibly some passive constraints. The try port is entered just before committing to the rule.

apply

An active constraints commits to a rule with possibly some passive constraints. The apply port is entered just after committing to the rule.


Send feedback on this subject.