@@ -104,7 +104,7 @@ After you have finished [setup](#setup), define a mapped object:
104
104
use Orisai\ObjectMapper\MappedObject;
105
105
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
106
106
107
- final class UserInput extends MappedObject
107
+ final class UserInput implements MappedObject
108
108
{
109
109
110
110
/** @StringValue(notEmpty=true) */
@@ -171,7 +171,7 @@ Expects bool
171
171
use Orisai\ObjectMapper\Attributes\Expect\BoolValue;
172
172
use Orisai\ObjectMapper\MappedObject;
173
173
174
- final class BoolInput extends MappedObject
174
+ final class BoolInput implements MappedObject
175
175
{
176
176
177
177
/** @BoolValue() */
@@ -209,7 +209,7 @@ Expects any of cases from given list
209
209
use Orisai\ObjectMapper\Attributes\Expect\ArrayEnumValue;
210
210
use Orisai\ObjectMapper\MappedObject;
211
211
212
- final class ArrayEnumInput extends MappedObject
212
+ final class ArrayEnumInput implements MappedObject
213
213
{
214
214
215
215
public const Cases = [
@@ -256,7 +256,7 @@ Expects float or int
256
256
use Orisai\ObjectMapper\Attributes\Expect\FloatValue;
257
257
use Orisai\ObjectMapper\MappedObject;
258
258
259
- final class FloatInput extends MappedObject
259
+ final class FloatInput implements MappedObject
260
260
{
261
261
262
262
/** @FloatValue() */
@@ -310,7 +310,7 @@ use Orisai\ObjectMapper\Attributes\Expect\InstanceOfValue;
310
310
use Orisai\ObjectMapper\MappedObject;
311
311
use stdClass;
312
312
313
- final class InstanceofInput extends MappedObject
313
+ final class InstanceofInput implements MappedObject
314
314
{
315
315
316
316
/** @InstanceOfValue(stdClass::class) */
@@ -342,7 +342,7 @@ Expects int
342
342
use Orisai\ObjectMapper\Attributes\Expect\IntValue;
343
343
use Orisai\ObjectMapper\MappedObject;
344
344
345
- final class IntInput extends MappedObject
345
+ final class IntInput implements MappedObject
346
346
{
347
347
348
348
/** @IntValue() */
@@ -393,7 +393,7 @@ Expects any value
393
393
use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
394
394
use Orisai\ObjectMapper\MappedObject;
395
395
396
- final class MixedInput extends MappedObject
396
+ final class MixedInput implements MappedObject
397
397
{
398
398
399
399
/**
@@ -425,7 +425,7 @@ Expects null
425
425
use Orisai\ObjectMapper\Attributes\Expect\NullValue;
426
426
use Orisai\ObjectMapper\MappedObject;
427
427
428
- final class NullInput extends MappedObject
428
+ final class NullInput implements MappedObject
429
429
{
430
430
431
431
/**
@@ -468,7 +468,7 @@ use Orisai\ObjectMapper\Attributes\Expect\NullValue;
468
468
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
469
469
use Orisai\ObjectMapper\MappedObject;
470
470
471
- final class NullInput extends MappedObject
471
+ final class NullInput implements MappedObject
472
472
{
473
473
474
474
/**
@@ -500,7 +500,7 @@ Expects any object
500
500
use Orisai\ObjectMapper\Attributes\Expect\ObjectValue;
501
501
use Orisai\ObjectMapper\MappedObject;
502
502
503
- final class ObjectInput extends MappedObject
503
+ final class ObjectInput implements MappedObject
504
504
{
505
505
506
506
/** @ObjectValue() */
@@ -529,7 +529,7 @@ Expects any scalar value - int|float|string|bool
529
529
use Orisai\ObjectMapper\Attributes\Expect\ScalarValue;
530
530
use Orisai\ObjectMapper\MappedObject;
531
531
532
- final class ScalarInput extends MappedObject
532
+ final class ScalarInput implements MappedObject
533
533
{
534
534
535
535
/**
@@ -561,7 +561,7 @@ Expects string
561
561
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
562
562
use Orisai\ObjectMapper\MappedObject;
563
563
564
- final class StringInput extends MappedObject
564
+ final class StringInput implements MappedObject
565
565
{
566
566
567
567
/** @StringValue() */
@@ -621,7 +621,7 @@ use Orisai\ObjectMapper\Attributes\Expect\StringValue;
621
621
use Orisai\ObjectMapper\Attributes\Expect\Url;
622
622
use Orisai\ObjectMapper\MappedObject;
623
623
624
- final class AllOfInput extends MappedObject
624
+ final class AllOfInput implements MappedObject
625
625
{
626
626
627
627
/**
@@ -661,7 +661,7 @@ use Orisai\ObjectMapper\Attributes\Expect\NullValue;
661
661
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
662
662
use Orisai\ObjectMapper\MappedObject;
663
663
664
- final class AnyOfInput extends MappedObject
664
+ final class AnyOfInput implements MappedObject
665
665
{
666
666
667
667
/**
@@ -703,7 +703,7 @@ use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
703
703
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
704
704
use Orisai\ObjectMapper\MappedObject;
705
705
706
- final class ArrayOfInput extends MappedObject
706
+ final class ArrayOfInput implements MappedObject
707
707
{
708
708
709
709
/**
@@ -772,7 +772,7 @@ use Orisai\ObjectMapper\Attributes\Expect\StringValue;
772
772
use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
773
773
use Orisai\ObjectMapper\MappedObject;
774
774
775
- final class ListOfInput extends MappedObject
775
+ final class ListOfInput implements MappedObject
776
776
{
777
777
778
778
/**
@@ -837,7 +837,7 @@ Expects value of a `BackedEnum` case
837
837
use Orisai\ObjectMapper\Attributes\Expect\BackedEnumValue;
838
838
use Orisai\ObjectMapper\MappedObject;
839
839
840
- final class BackedEnumInput extends MappedObject
840
+ final class BackedEnumInput implements MappedObject
841
841
{
842
842
843
843
#[BackedEnumValue(ExampleEnum::class)]
@@ -882,7 +882,7 @@ use Orisai\ObjectMapper\Attributes\Expect\BackedEnumValue;
882
882
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
883
883
use Orisai\ObjectMapper\MappedObject;
884
884
885
- final class BackedEnumInput extends MappedObject
885
+ final class BackedEnumInput implements MappedObject
886
886
{
887
887
888
888
#[AnyOf([
@@ -914,7 +914,7 @@ use DateTimeImmutable;
914
914
use Orisai\ObjectMapper\Attributes\Expect\DateTimeValue;
915
915
use Orisai\ObjectMapper\MappedObject;
916
916
917
- final class DateTimeInput extends MappedObject
917
+ final class DateTimeInput implements MappedObject
918
918
{
919
919
920
920
/** @DateTimeValue() */
@@ -967,15 +967,15 @@ use Orisai\ObjectMapper\Attributes\Expect\MappedObjectValue;
967
967
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
968
968
use Orisai\ObjectMapper\MappedObject;
969
969
970
- final class MappedObjectInput extends MappedObject
970
+ final class MappedObjectInput implements MappedObject
971
971
{
972
972
973
973
/** @MappedObjectValue(InnerInput::class) */
974
974
public InnerInput $field;
975
975
976
976
}
977
977
978
- class InnerInput extends MappedObject
978
+ class InnerInput implements MappedObject
979
979
{
980
980
981
981
/**
@@ -1010,7 +1010,7 @@ Expects valid url address
1010
1010
use Orisai\ObjectMapper\Attributes\Expect\Url;
1011
1011
use Orisai\ObjectMapper\MappedObject;
1012
1012
1013
- final class UrlInput extends MappedObject
1013
+ final class UrlInput implements MappedObject
1014
1014
{
1015
1015
1016
1016
/** @Url() */
@@ -1039,7 +1039,7 @@ Each field can be made optional by assigning default value to property:
1039
1039
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1040
1040
use Orisai\ObjectMapper\MappedObject;
1041
1041
1042
- final class OptionalInput extends MappedObject
1042
+ final class OptionalInput implements MappedObject
1043
1043
{
1044
1044
1045
1045
/** @StringValue() */
@@ -1055,7 +1055,7 @@ which are impossible to send:
1055
1055
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1056
1056
use Orisai\ObjectMapper\MappedObject;
1057
1057
1058
- final class AnotherOptionalInput extends MappedObject
1058
+ final class AnotherOptionalInput implements MappedObject
1059
1059
{
1060
1060
1061
1061
/** @StringValue() */
@@ -1076,7 +1076,7 @@ use Orisai\ObjectMapper\Attributes\Expect\NullValue;
1076
1076
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1077
1077
use Orisai\ObjectMapper\MappedObject;
1078
1078
1079
- final class NullableVariantsInput extends MappedObject
1079
+ final class NullableVariantsInput implements MappedObject
1080
1080
{
1081
1081
1082
1082
/**
@@ -1148,7 +1148,7 @@ Unknown fields are removed from data and are not available in mapped object.
1148
1148
``` php
1149
1149
use Orisai\ObjectMapper\MappedObject;
1150
1150
1151
- final class WithUnknownValuesInput extends MappedObject
1151
+ final class WithUnknownValuesInput implements MappedObject
1152
1152
{
1153
1153
1154
1154
}
@@ -1183,7 +1183,7 @@ use Orisai\ObjectMapper\Attributes\Expect\MappedObjectValue;
1183
1183
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1184
1184
use Orisai\ObjectMapper\MappedObject;
1185
1185
1186
- final class MainInput extends MappedObject
1186
+ final class MainInput implements MappedObject
1187
1187
{
1188
1188
1189
1189
/**
@@ -1197,7 +1197,7 @@ final class MainInput extends MappedObject
1197
1197
1198
1198
}
1199
1199
1200
- final class FullInput extends MappedObject
1200
+ final class FullInput implements MappedObject
1201
1201
{
1202
1202
1203
1203
/** @IntValue(min=0) */
@@ -1211,7 +1211,7 @@ final class FullInput extends MappedObject
1211
1211
1212
1212
}
1213
1213
1214
- final class IdOnlyInput extends MappedObject
1214
+ final class IdOnlyInput implements MappedObject
1215
1215
{
1216
1216
1217
1217
/** @IntValue(min=0) */
@@ -1237,7 +1237,7 @@ Keys from input data (fields) are mapped to object properties of the same name,
1237
1237
use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
1238
1238
use Orisai\ObjectMapper\MappedObject;
1239
1239
1240
- final class DefaultMappingInput extends MappedObject
1240
+ final class DefaultMappingInput implements MappedObject
1241
1241
{
1242
1242
1243
1243
/**
@@ -1264,7 +1264,7 @@ use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
1264
1264
use Orisai\ObjectMapper\Attributes\Modifiers\FieldName;
1265
1265
use Orisai\ObjectMapper\MappedObject;
1266
1266
1267
- final class CustomMappingInput extends MappedObject
1267
+ final class CustomMappingInput implements MappedObject
1268
1268
{
1269
1269
1270
1270
/**
@@ -1299,7 +1299,7 @@ see [default values](#optional-fields-and-default-values)). By default, you have
1299
1299
use Orisai\ObjectMapper\Attributes\Expect\BoolValue;
1300
1300
use Orisai\ObjectMapper\MappedObject;
1301
1301
1302
- final class ModesExampleInput extends MappedObject
1302
+ final class ModesExampleInput implements MappedObject
1303
1303
{
1304
1304
1305
1305
/** @BoolValue() */
@@ -1383,7 +1383,7 @@ use Orisai\ObjectMapper\Attributes\Callbacks\After;
1383
1383
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1384
1384
use Orisai\ObjectMapper\Context\FieldContext;
1385
1385
1386
- final class WithCallbackInput extends MappedObject
1386
+ final class WithCallbackInput implements MappedObject
1387
1387
{
1388
1388
1389
1389
/**
@@ -1440,7 +1440,7 @@ use Orisai\ObjectMapper\Context\MappedObjectContext;
1440
1440
* @Before("beforeObject")
1441
1441
* @After("afterObject")
1442
1442
*/
1443
- final class WithMappedObjectCallbacksInput extends MappedObject
1443
+ final class WithMappedObjectCallbacksInput implements MappedObject
1444
1444
{
1445
1445
1446
1446
/**
@@ -1489,7 +1489,7 @@ use Orisai\ObjectMapper\Attributes\Callbacks\After;
1489
1489
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1490
1490
use Orisai\ObjectMapper\Context\FieldContext;
1491
1491
1492
- final class WithFieldCallbacksInput extends MappedObject
1492
+ final class WithFieldCallbacksInput implements MappedObject
1493
1493
{
1494
1494
1495
1495
/**
@@ -1524,7 +1524,7 @@ use Orisai\ObjectMapper\Attributes\Callbacks\After;
1524
1524
use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1525
1525
use Orisai\ObjectMapper\Context\FieldContext;
1526
1526
1527
- final class WithNotInvokedCallbackInput extends MappedObject
1527
+ final class WithNotInvokedCallbackInput implements MappedObject
1528
1528
{
1529
1529
1530
1530
/**
@@ -1557,7 +1557,7 @@ use Orisai\ObjectMapper\MappedObject;
1557
1557
use Orisai\ObjectMapper\Attributes\Callbacks\After;
1558
1558
use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
1559
1559
1560
- final class WithReturningCallbackInput extends MappedObject
1560
+ final class WithReturningCallbackInput implements MappedObject
1561
1561
{
1562
1562
1563
1563
/**
@@ -1588,7 +1588,7 @@ use Orisai\ObjectMapper\Attributes\Expect\StringValue;
1588
1588
use Orisai\ObjectMapper\Exception\ValueDoesNotMatch;
1589
1589
use Orisai\ObjectMapper\Types\Value;
1590
1590
1591
- final class WithNotReturningCallbackInput extends MappedObject
1591
+ final class WithNotReturningCallbackInput implements MappedObject
1592
1592
{
1593
1593
1594
1594
/**
@@ -1618,7 +1618,7 @@ use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
1618
1618
use Orisai\ObjectMapper\Exception\ValueDoesNotMatch;
1619
1619
use Orisai\ObjectMapper\Types\Value;
1620
1620
1621
- final class WithComplexCallbackInput extends MappedObject
1621
+ final class WithComplexCallbackInput implements MappedObject
1622
1622
{
1623
1623
1624
1624
private ExampleService $service;
@@ -1681,7 +1681,7 @@ Since PHP 8.0 annotations can be written as attributes.
1681
1681
use Orisai\ObjectMapper\Attributes\Expect\MixedValue;
1682
1682
use Orisai\ObjectMapper\MappedObject;
1683
1683
1684
- final class WithAnnotationsAndAttributesInput extends MappedObject
1684
+ final class WithAnnotationsAndAttributesInput implements MappedObject
1685
1685
{
1686
1686
1687
1687
/** @MixedValue() */
@@ -1726,7 +1726,7 @@ use Orisai\ObjectMapper\MappedObject;
1726
1726
/**
1727
1727
* @CreateWithoutConstructor()
1728
1728
*/
1729
- final class ConstructorUsingVO extends MappedObject
1729
+ final class ConstructorUsingVO implements MappedObject
1730
1730
{
1731
1731
1732
1732
/** @StringValue() */
0 commit comments