summaryrefslogtreecommitdiff
path: root/vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2024-08-13 23:45:21 +0200
committerpolo <ordipolo@gmx.fr>2024-08-13 23:45:21 +0200
commitbf6655a534a6775d30cafa67bd801276bda1d98d (patch)
treec6381e3f6c81c33eab72508f410b165ba05f7e9c /vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php
parent94d67a4b51f8e62e7d518cce26a526ae1ec48278 (diff)
downloadAppliGestionPHP-bf6655a534a6775d30cafa67bd801276bda1d98d.zip
VERSION 0.2 doctrine ORM et entités
Diffstat (limited to 'vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php')
-rw-r--r--vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php60
1 files changed, 60 insertions, 0 deletions
diff --git a/vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php b/vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php
new file mode 100644
index 0000000..03d053b
--- /dev/null
+++ b/vendor/doctrine/orm/src/Persisters/Entity/CachedPersisterContext.php
@@ -0,0 +1,60 @@
1<?php
2
3declare(strict_types=1);
4
5namespace Doctrine\ORM\Persisters\Entity;
6
7use Doctrine\ORM\Query\ResultSetMapping;
8use Doctrine\Persistence\Mapping\ClassMetadata;
9
10/**
11 * A swappable persister context to use as a container for the current
12 * generated query/resultSetMapping/type binding information.
13 *
14 * This class is a utility class to be used only by the persister API
15 *
16 * This object is highly mutable due to performance reasons. Same reasoning
17 * behind its properties being public.
18 */
19class CachedPersisterContext
20{
21 /**
22 * The SELECT column list SQL fragment used for querying entities by this persister.
23 * This SQL fragment is only generated once per request, if at all.
24 */
25 public string|null $selectColumnListSql = null;
26
27 /**
28 * The JOIN SQL fragment used to eagerly load all many-to-one and one-to-one
29 * associations configured as FETCH_EAGER, as well as all inverse one-to-one associations.
30 */
31 public string|null $selectJoinSql = null;
32
33 /**
34 * Counter for creating unique SQL table and column aliases.
35 */
36 public int $sqlAliasCounter = 0;
37
38 /**
39 * Map from class names (FQCN) to the corresponding generated SQL table aliases.
40 *
41 * @var array<class-string, string>
42 */
43 public array $sqlTableAliases = [];
44
45 public function __construct(
46 /**
47 * Metadata object that describes the mapping of the mapped entity class.
48 */
49 public ClassMetadata $class,
50 /**
51 * ResultSetMapping that is used for all queries. Is generated lazily once per request.
52 */
53 public ResultSetMapping $rsm,
54 /**
55 * Whether this persistent context is considering limit operations applied to the selection queries
56 */
57 public bool $handlesLimits,
58 ) {
59 }
60}