Michael's example was that of having a person object. If that person has a name, some action must be performed. Otherwise, not.
We could set up a domain method like so:
in which doWithName looks like this:
final Consumer<Name> action
Michael says that this way, we declare what action some value should undergo, and leave the evaluation to the value.