PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.1.4
Admin Columns v7.1.4
7.1.4 7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / ListScreenRepository / Storage / ListScreenRepository.php
codepress-admin-columns / classes / ListScreenRepository / Storage Last commit date
ListScreenRepository.php 2 days ago ListScreenRepositoryFactory.php 2 days ago
ListScreenRepository.php
67 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\ListScreenRepository\Storage;
6
7 use AC;
8 use AC\ListScreenRepository\Rules;
9 use LogicException;
10
11 final class ListScreenRepository
12 {
13 private AC\ListScreenRepository $list_screen_repository;
14
15 private bool $writable;
16
17 private ?Rules $rules;
18
19 public function __construct(
20 AC\ListScreenRepository $list_screen_repository,
21 ?bool $writable = null,
22 ?Rules $rules = null
23 ) {
24 if (null === $writable) {
25 $writable = false;
26 }
27
28 $this->list_screen_repository = $list_screen_repository;
29 $this->writable = $writable && $this->list_screen_repository instanceof AC\ListScreenRepositoryWritable;
30 $this->rules = $rules;
31 }
32
33 public function get_list_screen_repository(): AC\ListScreenRepository
34 {
35 return $this->list_screen_repository;
36 }
37
38 public function is_writable(): bool
39 {
40 return $this->writable;
41 }
42
43 public function with_writable(bool $writable): self
44 {
45 return new self(
46 $this->list_screen_repository,
47 $writable,
48 $this->rules
49 );
50 }
51
52 public function get_rules(): Rules
53 {
54 if (null === $this->rules) {
55 throw new LogicException('No rules defined.');
56 }
57
58 return $this->rules;
59 }
60
61 public function has_rules(): bool
62 {
63 return $this->rules !== null;
64 }
65
66 }
67