The type of the value being mutated.
The mutation context, naming the mutator and carrying the value.
Any extra arguments forwarded by the caller.
The transformed value.
Signature for a constrainer mutator: transforms a value as part of resolving a constraint.
The type of the value being mutated.