public function dump($values) : string
    {
        if (! is_array($values))
            throw new DumpException($this, $values, self::ERROR);
        $items = [];
        $index = 0;
        try {
            foreach ($values as $key => $value) {
                $index = $key;
                $items[] = $this->syntax->dump($value);
            }
        } catch (DumpException $e) {
            throw new DumpException($this, $values, "Unable to dump item at key {$index}", [], $e);
        }

        return Text::join($items, $this->separator);
    }