Skip to content

Commit 2e518ae

Browse files
committed
ADD sealed examples
1 parent 4b99064 commit 2e518ae

2 files changed

Lines changed: 50 additions & 0 deletions

File tree

examples/sealed/sealedClasses.php

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace SealedClasses;
6+
7+
use DaveLiddament\PhpLanguageExtensions\Sealed;
8+
9+
class Success extends Response // OK
10+
{
11+
}
12+
13+
class Failed extends Response // OK
14+
{
15+
}
16+
17+
#[Sealed(Success::class, Failed::class)]
18+
class Response
19+
{
20+
}
21+
22+
23+
class AnotherClass extends Response // ERROR AnotherClass can not extend Response
24+
{
25+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace SealedInterfaces;
6+
7+
use DaveLiddament\PhpLanguageExtensions\Sealed;
8+
9+
class Success implements Response // OK
10+
{
11+
}
12+
13+
class Failed implements Response // OK
14+
{
15+
}
16+
17+
#[Sealed(Success::class, Failed::class)]
18+
interface Response
19+
{
20+
}
21+
22+
23+
class AnotherClass implements Response // ERROR AnotherClass can not implement Response
24+
{
25+
}

0 commit comments

Comments
 (0)