PluginProbe ʕ •ᴥ•ʔ
MailPoet – Newsletters, Email Marketing, and Automation / 5.36.0
MailPoet – Newsletters, Email Marketing, and Automation v5.36.0
5.36.0 5.35.1 5.35.0 5.34.3 5.34.2 5.34.1 5.34.0 5.33.1 5.33.0 5.32.0 5.31.0 5.30.0 5.29.0 5.28.1 5.28.0 5.27.0 5.26.0 5.26.1 5.25.0 5.24.0 4.43.0 4.43.1 4.44.0 4.44.1 4.45.0 4.46.0 4.47.0 4.48.0 4.48.1 4.48.2 4.49.0 4.49.1 4.5.0 4.5.1 4.5.2 4.50.0 4.50.1 4.51.0 4.51.1 4.51.2 4.52.0 4.53.0 4.54.0 4.55.0 4.56.0 4.57.0 4.58.0 4.58.1 4.58.2 4.6.0 4.6.1 4.6.2 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 5.0.0 5.0.1 5.0.2 5.1.0 5.1.1 5.10.0 5.10.1 5.11.0 5.12.0 5.12.1 5.12.10 5.12.11 5.12.12 5.12.13 5.12.2 5.12.3 5.12.4 5.12.5 5.12.6 5.12.7 5.12.8 5.12.9 5.13.0 5.13.1 5.13.2 5.14.0 5.14.1 5.14.2 5.14.3 5.15.0 5.15.1 5.16.0 5.16.1 5.16.2 5.16.3 5.16.4 5.17.0 5.17.1 5.17.2 5.17.3 5.17.4 5.17.5 5.17.6 5.18.0 5.19.0 5.2.0 5.2.1 5.2.2 5.2.3 5.20.0 5.21.0 5.21.1 5.21.2 5.21.3 5.22.0 5.22.1 5.22.2 5.22.3 5.22.4 5.23.0 5.23.1 5.23.2 5.3.0 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7 5.4.0 5.4.1 5.4.2 5.5.0 5.5.1 5.5.2 5.6.0 5.6.1 5.6.2 5.6.3 5.6.4 5.7.0 5.7.1 5.8.0 5.8.1 5.9.0 3.0.0-beta.15 3.7.1 3.0.0-beta.16 3.7.2 3.0.0-beta.17 3.7.3 3.0.0-beta.18 3.7.4 3.0.0-beta.19 3.7.5 3.0.0-beta.2 3.7.6 3.0.0-beta.20 3.7.8 3.0.0-beta.21 3.70.0 3.0.0-beta.22 3.71.0 3.0.0-beta.23 3.71.1 3.0.0-beta.23.1 3.71.2 3.0.0-beta.23.2 3.71.3 3.0.0-beta.24 3.72.0 3.0.0-beta.25 3.73.0 3.0.0-beta.26 3.73.1 3.0.0-beta.27 3.73.2 3.0.0-beta.28 3.74.0 3.0.0-beta.29 3.74.1 3.0.0-beta.3 3.74.2 3.0.0-beta.30 3.74.3 3.0.0-beta.31 3.75.0 3.0.0-beta.32 3.75.1 3.0.0-beta.33 3.76.0 3.0.0-beta.33.1 3.77.0 3.0.0-beta.34.0.0 3.77.1 3.0.0-beta.36.0.0 3.78.0 3.0.0-beta.36.0.1 3.79.0 3.0.0-beta.36.2.0 3.8 3.0.0-beta.36.3.0 3.8.1 3.0.0-beta.36.3.1 3.8.2 3.0.0-beta.37.0.0 3.8.3 3.0.0-beta.4 3.8.4 3.0.0-beta.5 3.8.5 3.0.0-beta.6 3.8.6 3.0.0-beta.7 3.80.0 3.0.0-beta.7.1 3.81.0 3.0.0-beta.8 3.82.0 3.0.0-beta.9 3.83.0 3.0.0-rc.1.0.0 3.84.0 3.0.0-rc.1.0.1 3.84.1 3.0.0-rc.1.0.2 3.85.0 3.0.0-rc.1.0.3 3.85.1 3.0.0-rc.1.0.4 3.86.0 3.0.0-rc.2.0.0 3.87.0 3.0.0-rc.2.0.1 3.87.1 3.0.0-rc.2.0.2 3.87.2 3.0.0-rc.2.0.3 3.88.0 3.0.1 3.88.1 3.0.2 3.88.2 3.0.3 3.89.0 3.0.4 3.89.1 3.0.5 3.89.2 3.0.6 3.89.3 3.0.7 3.89.4 3.0.8 3.9.0 3.0.9 3.9.1 3.1.0 3.90.0 3.10 3.90.1 3.10.1 3.90.2 3.100.0 3.91.0 3.100.1 3.91.1 3.100.2 3.92.0 3.101.0 3.92.1 3.101.1 3.93.0 3.102.0 3.93.1 3.102.1 3.94.0 3.103.0 3.95.0 3.103.1 3.95.1 3.11.0 3.96.0 3.11.1 3.96.1 3.11.2 3.97.0 3.11.3 3.98.0 3.11.4 3.98.1 3.11.5 3.99.0 3.12.0 3.99.1 3.12.1 4.0.0 3.13.0 4.0.1 3.14.0 4.1.0 3.14.1 4.1.1 3.15.0 4.10.0 3.16.0 4.11.0 3.16.1 4.11.1 3.16.2 4.12.0 3.16.3 4.12.1 3.17.0 4.12.2 3.17.1 4.13.0 3.17.2 4.14.0 3.18.0 4.15.0 3.18.1 4.16.0 3.18.2 4.17.0 3.19.0 4.17.1 3.19.1 4.18.0 3.19.2 4.18.1 3.19.3 4.19.0 3.2.0 4.2.0 3.2.1 4.20.0 3.2.2 4.20.1 3.2.3 4.20.2 3.2.4 4.21.0 3.2.5 4.22.0 3.20.0 4.22.1 3.21.0 4.22.2 3.21.1 4.23.0 3.22.0 4.24.0 3.23.0 4.25.0 3.23.1 4.26.0 3.23.2 4.26.1 3.24.0 4.27.0 3.25.0 4.28.0 3.25.1 4.29.0 3.26.0 4.3.0 3.26.1 4.3.1 3.27.0 4.30.0 3.28.0 4.31.0 3.29.0 4.31.1 3.3.0 4.32.0 3.3.1 4.33.0 3.3.2 4.34.0 3.3.3 4.35.0 3.3.4 4.35.1 3.3.5 4.36.0 3.3.6 4.37.0 3.30.0 4.38.0 3.31.0 4.39.0 3.31.1 4.4.0 3.32.0 4.40.0 3.32.1 4.41.0 3.32.2 4.41.1 3.33.0 4.41.2 3.34.0 4.41.3 3.34.1 4.42.0 3.34.2 4.42.1 3.34.3 3.34.4 3.35.0 3.35.1 3.35.3 3.35.4 3.36.0 3.37.0 3.37.1 3.37.2 3.37.3 3.38.0 3.38.1 3.39.0 3.39.1 3.39.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.40.0 3.40.1 3.41.0 3.41.1 3.41.2 3.42.0 3.42.1 3.42.2 3.42.3 3.43.0 3.43.1 3.44.0 3.45.0 3.45.1 3.46.0 3.46.1 3.46.10 3.46.11 3.46.12 3.46.13 3.46.14 3.46.2 3.46.3 3.46.4 3.46.5 3.46.6 3.46.7 3.46.8 3.46.9 3.47.0 3.47.1 3.47.10 3.47.11 3.47.2 3.47.3 3.47.5 3.47.6 3.47.7 3.47.9 3.48.0 3.48.1 3.49.0 3.49.1 3.5.0 3.5.1 3.50.0 3.51.0 3.51.1 3.51.2 3.52.0 3.53.0 3.54.0 3.54.1 3.54.2 3.54.3 3.55.0 3.55.1 3.56.0 3.56.1 3.56.2 3.57.0 3.57.1 3.58.0 3.59.0 3.59.1 3.59.2 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.60.0 3.60.1 3.60.10 3.60.11 3.60.12 3.60.2 3.60.3 3.60.4 3.60.6 3.60.7 3.60.8 3.60.9 3.61.0 3.62.0 3.62.1 3.63.0 3.64.0 3.64.1 3.64.2 3.64.3 3.65.0 trunk 3.65.1 3.0.0 3.66.0 3.0.0-beta.1 3.67.0 3.0.0-beta.10 3.67.1 3.0.0-beta.11 3.68.0 3.0.0-beta.12 3.69.0 3.0.0-beta.13 3.69.1 3.0.0-beta.14 3.7.0
mailpoet / vendor-prefixed / symfony / dependency-injection / Definition.php
mailpoet / vendor-prefixed / symfony / dependency-injection Last commit date
Argument 2 years ago Attribute 2 years ago Exception 2 years ago ParameterBag 3 years ago Alias.php 4 years ago ChildDefinition.php 4 years ago Container.php 2 years ago ContainerAwareInterface.php 2 years ago ContainerAwareTrait.php 2 years ago ContainerBuilder.php 2 years ago ContainerInterface.php 4 years ago Definition.php 2 years ago EnvVarLoaderInterface.php 4 years ago EnvVarProcessor.php 2 years ago EnvVarProcessorInterface.php 4 years ago ExpressionLanguage.php 2 years ago ExpressionLanguageProvider.php 2 years ago Parameter.php 4 years ago Reference.php 4 years ago ReverseContainer.php 2 years ago ServiceLocator.php 2 years ago TaggedContainerInterface.php 4 years ago TypedReference.php 2 years ago Variable.php 4 years ago index.php 3 years ago
Definition.php
417 lines
1 <?php
2 namespace MailPoetVendor\Symfony\Component\DependencyInjection;
3 if (!defined('ABSPATH')) exit;
4 use MailPoetVendor\Symfony\Component\DependencyInjection\Argument\BoundArgument;
5 use MailPoetVendor\Symfony\Component\DependencyInjection\Exception\InvalidArgumentException;
6 use MailPoetVendor\Symfony\Component\DependencyInjection\Exception\OutOfBoundsException;
7 class Definition
8 {
9 private const DEFAULT_DEPRECATION_TEMPLATE = 'The "%service_id%" service is deprecated. You should stop using it, as it will be removed in the future.';
10 private $class;
11 private $file;
12 private $factory;
13 private $shared = \true;
14 private $deprecation = [];
15 private $properties = [];
16 private $calls = [];
17 private $instanceof = [];
18 private $autoconfigured = \false;
19 private $configurator;
20 private $tags = [];
21 private $public = \false;
22 private $synthetic = \false;
23 private $abstract = \false;
24 private $lazy = \false;
25 private $decoratedService;
26 private $autowired = \false;
27 private $changes = [];
28 private $bindings = [];
29 private $errors = [];
30 protected $arguments = [];
31 public $innerServiceId;
32 public $decorationOnInvalid;
33 public function __construct(?string $class = null, array $arguments = [])
34 {
35 if (null !== $class) {
36 $this->setClass($class);
37 }
38 $this->arguments = $arguments;
39 }
40 public function getChanges()
41 {
42 return $this->changes;
43 }
44 public function setChanges(array $changes)
45 {
46 $this->changes = $changes;
47 return $this;
48 }
49 public function setFactory($factory)
50 {
51 $this->changes['factory'] = \true;
52 if (\is_string($factory) && \str_contains($factory, '::')) {
53 $factory = \explode('::', $factory, 2);
54 } elseif ($factory instanceof Reference) {
55 $factory = [$factory, '__invoke'];
56 }
57 $this->factory = $factory;
58 return $this;
59 }
60 public function getFactory()
61 {
62 return $this->factory;
63 }
64 public function setDecoratedService(?string $id, ?string $renamedId = null, int $priority = 0, int $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE)
65 {
66 if ($renamedId && $id === $renamedId) {
67 throw new InvalidArgumentException(\sprintf('The decorated service inner name for "%s" must be different than the service name itself.', $id));
68 }
69 $this->changes['decorated_service'] = \true;
70 if (null === $id) {
71 $this->decoratedService = null;
72 } else {
73 $this->decoratedService = [$id, $renamedId, $priority];
74 if (ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE !== $invalidBehavior) {
75 $this->decoratedService[] = $invalidBehavior;
76 }
77 }
78 return $this;
79 }
80 public function getDecoratedService()
81 {
82 return $this->decoratedService;
83 }
84 public function setClass(?string $class)
85 {
86 $this->changes['class'] = \true;
87 $this->class = $class;
88 return $this;
89 }
90 public function getClass()
91 {
92 return $this->class;
93 }
94 public function setArguments(array $arguments)
95 {
96 $this->arguments = $arguments;
97 return $this;
98 }
99 public function setProperties(array $properties)
100 {
101 $this->properties = $properties;
102 return $this;
103 }
104 public function getProperties()
105 {
106 return $this->properties;
107 }
108 public function setProperty(string $name, $value)
109 {
110 $this->properties[$name] = $value;
111 return $this;
112 }
113 public function addArgument($argument)
114 {
115 $this->arguments[] = $argument;
116 return $this;
117 }
118 public function replaceArgument($index, $argument)
119 {
120 if (0 === \count($this->arguments)) {
121 throw new OutOfBoundsException(\sprintf('Cannot replace arguments for class "%s" if none have been configured yet.', $this->class));
122 }
123 if (\is_int($index) && ($index < 0 || $index > \count($this->arguments) - 1)) {
124 throw new OutOfBoundsException(\sprintf('The index "%d" is not in the range [0, %d] of the arguments of class "%s".', $index, \count($this->arguments) - 1, $this->class));
125 }
126 if (!\array_key_exists($index, $this->arguments)) {
127 throw new OutOfBoundsException(\sprintf('The argument "%s" doesn\'t exist in class "%s".', $index, $this->class));
128 }
129 $this->arguments[$index] = $argument;
130 return $this;
131 }
132 public function setArgument($key, $value)
133 {
134 $this->arguments[$key] = $value;
135 return $this;
136 }
137 public function getArguments()
138 {
139 return $this->arguments;
140 }
141 public function getArgument($index)
142 {
143 if (!\array_key_exists($index, $this->arguments)) {
144 throw new OutOfBoundsException(\sprintf('The argument "%s" doesn\'t exist in class "%s".', $index, $this->class));
145 }
146 return $this->arguments[$index];
147 }
148 public function setMethodCalls(array $calls = [])
149 {
150 $this->calls = [];
151 foreach ($calls as $call) {
152 $this->addMethodCall($call[0], $call[1], $call[2] ?? \false);
153 }
154 return $this;
155 }
156 public function addMethodCall(string $method, array $arguments = [], bool $returnsClone = \false)
157 {
158 if (empty($method)) {
159 throw new InvalidArgumentException('Method name cannot be empty.');
160 }
161 $this->calls[] = $returnsClone ? [$method, $arguments, \true] : [$method, $arguments];
162 return $this;
163 }
164 public function removeMethodCall(string $method)
165 {
166 foreach ($this->calls as $i => $call) {
167 if ($call[0] === $method) {
168 unset($this->calls[$i]);
169 }
170 }
171 return $this;
172 }
173 public function hasMethodCall(string $method)
174 {
175 foreach ($this->calls as $call) {
176 if ($call[0] === $method) {
177 return \true;
178 }
179 }
180 return \false;
181 }
182 public function getMethodCalls()
183 {
184 return $this->calls;
185 }
186 public function setInstanceofConditionals(array $instanceof)
187 {
188 $this->instanceof = $instanceof;
189 return $this;
190 }
191 public function getInstanceofConditionals()
192 {
193 return $this->instanceof;
194 }
195 public function setAutoconfigured(bool $autoconfigured)
196 {
197 $this->changes['autoconfigured'] = \true;
198 $this->autoconfigured = $autoconfigured;
199 return $this;
200 }
201 public function isAutoconfigured()
202 {
203 return $this->autoconfigured;
204 }
205 public function setTags(array $tags)
206 {
207 $this->tags = $tags;
208 return $this;
209 }
210 public function getTags()
211 {
212 return $this->tags;
213 }
214 public function getTag(string $name)
215 {
216 return $this->tags[$name] ?? [];
217 }
218 public function addTag(string $name, array $attributes = [])
219 {
220 $this->tags[$name][] = $attributes;
221 return $this;
222 }
223 public function hasTag(string $name)
224 {
225 return isset($this->tags[$name]);
226 }
227 public function clearTag(string $name)
228 {
229 unset($this->tags[$name]);
230 return $this;
231 }
232 public function clearTags()
233 {
234 $this->tags = [];
235 return $this;
236 }
237 public function setFile(?string $file)
238 {
239 $this->changes['file'] = \true;
240 $this->file = $file;
241 return $this;
242 }
243 public function getFile()
244 {
245 return $this->file;
246 }
247 public function setShared(bool $shared)
248 {
249 $this->changes['shared'] = \true;
250 $this->shared = $shared;
251 return $this;
252 }
253 public function isShared()
254 {
255 return $this->shared;
256 }
257 public function setPublic(bool $boolean)
258 {
259 $this->changes['public'] = \true;
260 $this->public = $boolean;
261 return $this;
262 }
263 public function isPublic()
264 {
265 return $this->public;
266 }
267 public function setPrivate(bool $boolean)
268 {
269 trigger_deprecation('symfony/dependency-injection', '5.2', 'The "%s()" method is deprecated, use "setPublic()" instead.', __METHOD__);
270 return $this->setPublic(!$boolean);
271 }
272 public function isPrivate()
273 {
274 return !$this->public;
275 }
276 public function setLazy(bool $lazy)
277 {
278 $this->changes['lazy'] = \true;
279 $this->lazy = $lazy;
280 return $this;
281 }
282 public function isLazy()
283 {
284 return $this->lazy;
285 }
286 public function setSynthetic(bool $boolean)
287 {
288 $this->synthetic = $boolean;
289 if (!isset($this->changes['public'])) {
290 $this->setPublic(\true);
291 }
292 return $this;
293 }
294 public function isSynthetic()
295 {
296 return $this->synthetic;
297 }
298 public function setAbstract(bool $boolean)
299 {
300 $this->abstract = $boolean;
301 return $this;
302 }
303 public function isAbstract()
304 {
305 return $this->abstract;
306 }
307 public function setDeprecated()
308 {
309 $args = \func_get_args();
310 if (\func_num_args() < 3) {
311 trigger_deprecation('symfony/dependency-injection', '5.1', 'The signature of method "%s()" requires 3 arguments: "string $package, string $version, string $message", not defining them is deprecated.', __METHOD__);
312 $status = $args[0] ?? \true;
313 if (!$status) {
314 trigger_deprecation('symfony/dependency-injection', '5.1', 'Passing a null message to un-deprecate a node is deprecated.');
315 }
316 $message = (string) ($args[1] ?? null);
317 $package = $version = '';
318 } else {
319 $status = \true;
320 $package = (string) $args[0];
321 $version = (string) $args[1];
322 $message = (string) $args[2];
323 }
324 if ('' !== $message) {
325 if (\preg_match('#[\\r\\n]|\\*/#', $message)) {
326 throw new InvalidArgumentException('Invalid characters found in deprecation template.');
327 }
328 if (!\str_contains($message, '%service_id%')) {
329 throw new InvalidArgumentException('The deprecation template must contain the "%service_id%" placeholder.');
330 }
331 }
332 $this->changes['deprecated'] = \true;
333 $this->deprecation = $status ? ['package' => $package, 'version' => $version, 'message' => $message ?: self::DEFAULT_DEPRECATION_TEMPLATE] : [];
334 return $this;
335 }
336 public function isDeprecated()
337 {
338 return (bool) $this->deprecation;
339 }
340 public function getDeprecationMessage(string $id)
341 {
342 trigger_deprecation('symfony/dependency-injection', '5.1', 'The "%s()" method is deprecated, use "getDeprecation()" instead.', __METHOD__);
343 return $this->getDeprecation($id)['message'];
344 }
345 public function getDeprecation(string $id) : array
346 {
347 return ['package' => $this->deprecation['package'], 'version' => $this->deprecation['version'], 'message' => \str_replace('%service_id%', $id, $this->deprecation['message'])];
348 }
349 public function setConfigurator($configurator)
350 {
351 $this->changes['configurator'] = \true;
352 if (\is_string($configurator) && \str_contains($configurator, '::')) {
353 $configurator = \explode('::', $configurator, 2);
354 } elseif ($configurator instanceof Reference) {
355 $configurator = [$configurator, '__invoke'];
356 }
357 $this->configurator = $configurator;
358 return $this;
359 }
360 public function getConfigurator()
361 {
362 return $this->configurator;
363 }
364 public function isAutowired()
365 {
366 return $this->autowired;
367 }
368 public function setAutowired(bool $autowired)
369 {
370 $this->changes['autowired'] = \true;
371 $this->autowired = $autowired;
372 return $this;
373 }
374 public function getBindings()
375 {
376 return $this->bindings;
377 }
378 public function setBindings(array $bindings)
379 {
380 foreach ($bindings as $key => $binding) {
381 if (0 < \strpos($key, '$') && $key !== ($k = \preg_replace('/[ \\t]*\\$/', ' $', $key))) {
382 unset($bindings[$key]);
383 $bindings[$key = $k] = $binding;
384 }
385 if (!$binding instanceof BoundArgument) {
386 $bindings[$key] = new BoundArgument($binding);
387 }
388 }
389 $this->bindings = $bindings;
390 return $this;
391 }
392 public function addError($error)
393 {
394 if ($error instanceof self) {
395 $this->errors = \array_merge($this->errors, $error->errors);
396 } else {
397 $this->errors[] = $error;
398 }
399 return $this;
400 }
401 public function getErrors()
402 {
403 foreach ($this->errors as $i => $error) {
404 if ($error instanceof \Closure) {
405 $this->errors[$i] = (string) $error();
406 } elseif (!\is_string($error)) {
407 $this->errors[$i] = (string) $error;
408 }
409 }
410 return $this->errors;
411 }
412 public function hasErrors() : bool
413 {
414 return (bool) $this->errors;
415 }
416 }
417