public function itemValue(callable $valueFunction)
    {
        // Paths aren't recorded at all if requireUnique+itemValue
        // because then key is filename|dirname and value is arbitrary.
        $this->pathNameRecord = $this->requireUnique ? 'none' : 'key';

        $this->itemValue = $valueFunction;
        return $this;
    }