public function append (Field $field)
    {
        if (in_array($field, $this->_fields, true)) {
            throw new InvalidArgumentException("{$this} already contains {$field}");
        }
        $this->_fields []= $field;
    }