PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 5.12.1
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v5.12.1
5.12.1 5.12.0 5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / vendor / prefixed / symfony / console / Descriptor / Descriptor.php
matomo / app / vendor / prefixed / symfony / console / Descriptor Last commit date
ApplicationDescription.php 1 year ago Descriptor.php 1 year ago DescriptorInterface.php 2 years ago JsonDescriptor.php 1 year ago MarkdownDescriptor.php 1 year ago TextDescriptor.php 1 year ago XmlDescriptor.php 1 year ago
Descriptor.php
85 lines
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 namespace Matomo\Dependencies\Symfony\Component\Console\Descriptor;
12
13 use Matomo\Dependencies\Symfony\Component\Console\Application;
14 use Matomo\Dependencies\Symfony\Component\Console\Command\Command;
15 use Matomo\Dependencies\Symfony\Component\Console\Exception\InvalidArgumentException;
16 use Matomo\Dependencies\Symfony\Component\Console\Input\InputArgument;
17 use Matomo\Dependencies\Symfony\Component\Console\Input\InputDefinition;
18 use Matomo\Dependencies\Symfony\Component\Console\Input\InputOption;
19 use Matomo\Dependencies\Symfony\Component\Console\Output\OutputInterface;
20 /**
21 * @author Jean-François Simon <jeanfrancois.simon@sensiolabs.com>
22 *
23 * @internal
24 */
25 abstract class Descriptor implements DescriptorInterface
26 {
27 /**
28 * @var OutputInterface
29 */
30 protected $output;
31 /**
32 * {@inheritdoc}
33 */
34 public function describe(OutputInterface $output, object $object, array $options = [])
35 {
36 $this->output = $output;
37 switch (\true) {
38 case $object instanceof InputArgument:
39 $this->describeInputArgument($object, $options);
40 break;
41 case $object instanceof InputOption:
42 $this->describeInputOption($object, $options);
43 break;
44 case $object instanceof InputDefinition:
45 $this->describeInputDefinition($object, $options);
46 break;
47 case $object instanceof Command:
48 $this->describeCommand($object, $options);
49 break;
50 case $object instanceof Application:
51 $this->describeApplication($object, $options);
52 break;
53 default:
54 throw new InvalidArgumentException(sprintf('Object of type "%s" is not describable.', get_debug_type($object)));
55 }
56 }
57 /**
58 * Writes content to output.
59 */
60 protected function write(string $content, bool $decorated = \false)
61 {
62 $this->output->write($content, \false, $decorated ? OutputInterface::OUTPUT_NORMAL : OutputInterface::OUTPUT_RAW);
63 }
64 /**
65 * Describes an InputArgument instance.
66 */
67 protected abstract function describeInputArgument(InputArgument $argument, array $options = []);
68 /**
69 * Describes an InputOption instance.
70 */
71 protected abstract function describeInputOption(InputOption $option, array $options = []);
72 /**
73 * Describes an InputDefinition instance.
74 */
75 protected abstract function describeInputDefinition(InputDefinition $definition, array $options = []);
76 /**
77 * Describes a Command instance.
78 */
79 protected abstract function describeCommand(Command $command, array $options = []);
80 /**
81 * Describes an Application instance.
82 */
83 protected abstract function describeApplication(Application $application, array $options = []);
84 }
85