Wings.php$0 ➔ newInstance()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
c 1
b 0
f 0
dl 0
loc 3
rs 10
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 Wings 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
            Wings::class,
24
            TestModelConstants::TYPE_NAME_WINGS
25
        )
26
        ->namespaceUri(TestModelConstants::NEWER_NAMESPACE)
27
        ->instanceProvider(
28
            new class implements ModelTypeInstanceProviderInterface
29
            {
30
                public function newInstance(ModelTypeInstanceContext $instanceContext): Wings
31
                {
32
                    return new Wings($instanceContext);
33
                }
34
            }
35
        );
36
37
        $typeBuilder->build();
38
    }
39
}
40