e/Description.php$0   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 5
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 5
rs 10
wmc 1
1
<?php
2
3
namespace Tests\TestModel\Instance;
4
5
use Xml\ModelBuilder;
6
use Xml\Impl\Instance\{
7
    ModelElementInstanceImpl,
8
    ModelTypeInstanceContext
9
};
10
use Xml\Type\ModelTypeInstanceProviderInterface;
11
use Tests\TestModel\TestModelConstants;
12
13
class Description extends ModelElementInstanceImpl
14
{
15
    public function __construct(ModelTypeInstanceContext $instanceContext)
16
    {
17
        parent::__construct($instanceContext);
18
    }
19
20
    public static function registerType(ModelBuilder $modelBuilder): void
21
    {
22
        $typeBuilder = $modelBuilder->defineType(
23
            Description::class,
24
            TestModelConstants::ELEMENT_NAME_DESCRIPTION
25
        )
26
        ->namespaceUri(TestModelConstants::MODEL_NAMESPACE)
27
        ->instanceProvider(
28
            new class implements ModelTypeInstanceProviderInterface
29
            {
30
                public function newInstance(ModelTypeInstanceContext $instanceContext): Description
31
                {
32
                    return new Description($instanceContext);
33
                }
34
            }
35
        );
36
37
        $typeBuilder->build();
38
    }
39
}
40