Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0 / 0 |
|
100.00% |
0 / 0 |
CRAP | |
100.00% |
0 / 0 |
|
| <?php | |
| /** | |
| * @file | |
| * Contains \Drupal\Core\Database\Query\ExtendableInterface. | |
| */ | |
| namespace Drupal\Core\Database\Query; | |
| /** | |
| * Interface for extendable query objects. | |
| * | |
| * "Extenders" follow the "Decorator" OOP design pattern. That is, they wrap | |
| * and "decorate" another object. In our case, they implement the same interface | |
| * as select queries and wrap a select query, to which they delegate almost all | |
| * operations. Subclasses of this class may implement additional methods or | |
| * override existing methods as appropriate. Extenders may also wrap other | |
| * extender objects, allowing for arbitrarily complex "enhanced" queries. | |
| */ | |
| interface ExtendableInterface { | |
| /** | |
| * Enhance this object by wrapping it in an extender object. | |
| * | |
| * @param $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. | |
| * @return \Drupal\Core\Database\Query\ExtendableInterface | |
| * The extender object, which now contains a reference to this object. | |
| */ | |
| public function extend($extender_name); | |
| } |