File tree Expand file tree Collapse file tree 9 files changed +154
-3
lines changed Expand file tree Collapse file tree 9 files changed +154
-3
lines changed Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ class Checker implements CheckerInterface
1414 /**
1515 * @inheritdoc
1616 */
17- public function fulfills (array $ argument1 , TypeInterface $ requirement )
17+ public function fulfills ($ argument1 , TypeInterface $ requirement )
1818 {
1919 return new Result (true , []);
2020 }
Original file line number Diff line number Diff line change @@ -12,10 +12,10 @@ interface CheckerInterface
1212{
1313
1414 /**
15- * @param array $ tested
15+ * @param mixed $element the element which should be tested
1616 * @param TypeInterface $requirement
1717 *
1818 * @return ResultInterface
1919 */
20- public function fulfills (array $ tested , TypeInterface $ requirement );
20+ public function fulfills ($ element , TypeInterface $ requirement );
2121}
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ use StructureCheck \Result ;
6+ use StructureCheck \ResultInterface ;
7+
8+ /**
9+ * Class BoolType
10+ * @package StructureCheck\Type
11+ */
12+ class BoolType implements TypeInterface
13+ {
14+ private static $ errorMessage = 'The value %s is not a boolean. ' ;
15+
16+ /**
17+ * @param mixed $value
18+ *
19+ * @return ResultInterface
20+ */
21+ public function check ($ value )
22+ {
23+ $ checkResult = is_string ($ value );
24+
25+ return new Result (
26+ $ checkResult ,
27+ !$ checkResult ? [sprintf (self ::$ errorMessage , json_encode ($ value ))] : []
28+ );
29+ }
30+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ class FloatType
6+ {
7+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ use StructureCheck \Result ;
6+ use StructureCheck \ResultInterface ;
7+
8+ /**
9+ * Class IntType
10+ * @package StructureCheck\Type
11+ */
12+ class IntType implements TypeInterface
13+ {
14+ private static $ errorMessage = 'The value %s is not an integer. ' ;
15+
16+ /**
17+ * @param mixed $value
18+ *
19+ * @return ResultInterface
20+ */
21+ public function check ($ value )
22+ {
23+ $ checkResult = is_int ($ value );
24+
25+ return new Result (
26+ $ checkResult ,
27+ !$ checkResult ? [sprintf (self ::$ errorMessage , json_encode ($ value ))] : []
28+ );
29+ }
30+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ class ListType
6+ {
7+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ use StructureCheck \Result ;
6+
7+ /**
8+ * Class NullableType
9+ * @package StructureCheck\Type
10+ */
11+ class NullableType implements TypeInterface
12+ {
13+
14+ /**
15+ * @var TypeInterface
16+ */
17+ private $ child ;
18+
19+ /**
20+ * NullableType constructor.
21+ *
22+ * @param TypeInterface $child
23+ */
24+ public function __construct (TypeInterface $ child )
25+ {
26+ $ this ->child = $ child ;
27+ }
28+
29+ /**
30+ * @inheritdoc
31+ */
32+ public function check ($ value )
33+ {
34+ if (is_null ($ value )) {
35+ return new Result (true , []);
36+ }
37+
38+ return $ this ->child ->check ($ value );
39+ }
40+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ class ObjectType
6+ {
7+ }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace StructureCheck \Type ;
4+
5+ use StructureCheck \Result ;
6+ use StructureCheck \ResultInterface ;
7+
8+ /**
9+ * Class StringType
10+ * @package StructureCheck\Type
11+ */
12+ class StringType implements TypeInterface
13+ {
14+ private static $ errorMessage = 'The value %s is not a string. ' ;
15+
16+ /**
17+ * @param mixed $value
18+ *
19+ * @return ResultInterface
20+ */
21+ public function check ($ value )
22+ {
23+ $ checkResult = is_string ($ value );
24+
25+ return new Result (
26+ $ checkResult ,
27+ !$ checkResult ? [sprintf (self ::$ errorMessage , json_encode ($ value ))] : []
28+ );
29+ }
30+ }
You can’t perform that action at this time.
0 commit comments