Enhance this object by wrapping it in an extender object.
$extender_name: The base name of the extending class. The base name will be checked against the current database connection to allow driver-specific subclasses as well, using the same logic as the query objects themselves. For example, PagerDefault_mysql is the MySQL-specific override for PagerDefault.
QueryExtendableInterface The extender object, which now contains a reference to this object.
Overrides QueryExtendableInterface::extend
public function extend($extender_name) {
$override_class = $extender_name . '_' . $this->connection
->driver();
if (class_exists($override_class)) {
$extender_name = $override_class;
}
return new $extender_name($this, $this->connection);
}