| Total Complexity | 5 |
| Total Lines | 33 |
| Duplicated Lines | 0 % |
| Coverage | 100% |
| Changes | 1 | ||
| Bugs | 0 | Features | 1 |
| 1 | <?php |
||
| 17 | final class ORMContext |
||
| 18 | { |
||
| 19 | private static ?SpecificationNormalizer $defaultNormalizer = null; |
||
| 20 | |||
| 21 | private QueryBuilder $qb; |
||
| 22 | private string $alias; |
||
| 23 | |||
| 24 | 37 | public function __construct(QueryBuilder $qb, string $alias) |
|
| 25 | { |
||
| 26 | 37 | $this->qb = $qb; |
|
| 27 | 37 | $this->alias = $alias; |
|
| 28 | 37 | } |
|
| 29 | |||
| 30 | 37 | public static function defaultNormalizer(): SpecificationNormalizer |
|
| 31 | { |
||
| 32 | 37 | return self::$defaultNormalizer ?: self::$defaultNormalizer = new SpecificationNormalizer([ |
|
| 33 | 1 | new NestedNormalizer(), |
|
| 34 | 1 | new CallableNormalizer(), |
|
| 35 | 1 | new ComparisonNormalizer(), |
|
| 36 | 1 | new CompositeNormalizer(), |
|
| 37 | 1 | new NullNormalizer(), |
|
| 38 | 37 | new OrderByNormalizer(), |
|
| 39 | ]); |
||
| 40 | } |
||
| 41 | |||
| 42 | 37 | public function qb(): QueryBuilder |
|
| 43 | { |
||
| 44 | 37 | return $this->qb; |
|
| 45 | } |
||
| 46 | |||
| 47 | 37 | public function alias(): string |
|
| 50 | } |
||
| 51 | } |
||
| 52 |