File tree 3 files changed +44
-1
lines changed
3 files changed +44
-1
lines changed Original file line number Diff line number Diff line change 24
24
" src/FinishFunc.php" ,
25
25
" src/FileLog.php" ,
26
26
" src/Xml.php" ,
27
- " src/XmlDecodeFailException.php"
27
+ " src/XmlDecodeFailException.php" ,
28
+ " src/trait/"
28
29
],
29
30
"files" : [
30
31
" src/XString.php" ,
Original file line number Diff line number Diff line change
1
+ <?php
2
+ trait ExtraHandlerTrait {
3
+ public function getExtra (): object {
4
+ return $ this ->extra ??= new \stdClass ();
5
+ }
6
+ public function saveExtra (): void {
7
+ $ this ->update ([
8
+ 'extra ' => $ this ->extra
9
+ ]);
10
+ }
11
+ }
Original file line number Diff line number Diff line change
1
+ <?php
2
+ trait NamedEnumBackedTrait {
3
+ abstract public function getName (): string ;
4
+ public static function getNameMap (): array {
5
+ static $ name_map = null ;
6
+ if (! isset ($ name_map )) {
7
+ $ name_map = [];
8
+ foreach (static ::cases () as $ status )
9
+ $ name_map [$ status ->value ] = $ status ->getName ();
10
+ }
11
+ return $ name_map ;
12
+ }
13
+ public static function getKeyNameObjectArray (): array {
14
+ static $ name_map_array = null ;
15
+ if (! isset ($ name_map_array )) {
16
+ $ name_map_array = [];
17
+ foreach (static ::cases () as $ status )
18
+ $ name_map_array [] = $ status ->getKeyNameObject ();
19
+ }
20
+ return $ name_map_array ;
21
+ }
22
+ public function getKeyNameObject (): object {
23
+ $ ob = new stdClass ();
24
+ $ ob ->name = $ this ->getName ();
25
+ $ ob ->key = $ this ->value ;
26
+ return $ ob ;
27
+ }
28
+ public function getKeyNamePairMap (): array {
29
+ return [$ this ->value => $ this ->getName ()];
30
+ }
31
+ }
You can’t perform that action at this time.
0 commit comments