private function valueModification($value, array $modifiers)
    {
        if (is_null($value)) {
            if ($modifiers['n'] || Compat::getOpt('types')) {
                return $this->implementation->reprNULL($this->connection);
            }
        }
        if ($modifiers['h']) {
            return $this->implementation->reprHexadecimal($this->connection, $value);
        }
        if ($modifiers['r']) {
            return $this->implementation->reprString($this->connection, $value);
        }
        if ($modifiers['i']) {
            return $this->implementation->reprInt($this->connection, $value);
        } elseif ($modifiers['f']) {
            return $this->implementation->reprFloat($this->connection, $value);
        } elseif ($modifiers['b']) {
            return $this->implementation->reprBool($this->connection, $value);
        }
        if (Compat::getOpt('types')) {
            $type = gettype($value);
            if ($type === 'integer') {
                return $this->implementation->reprInt($this->connection, $value);
            } elseif ($type === 'double') {
                return $this->implementation->reprFloat($this->connection, $value);
            } elseif ($type === 'boolean') {
                return $this->implementation->reprBool($this->connection, $value);
            }
        }
        return $this->implementation->reprString($this->connection, $value);
    }