Skip to content

Commit 390eed6

Browse files
authored
Allow passing explicit null values for optional input members (#1542)
This makes it easier to define the array literal for input objects as PHP does not have a syntax sugar for conditional keys in an array literal. This is consistent with the generated code for value objects. Even though input objects allow to omit required members in the constructor shape (as they can be set later by using the setter), the phpdoc type still does not allow passing null explicitly (even though the code would deal with it until the validation run) so that static analysis tools can catch mistakes there. Passing a required member explicitly is intended to pass a valid value for it and not a potentially missing one.
1 parent f8adab1 commit 390eed6

8 files changed

+66
-66
lines changed

src/Input/AddLayerVersionPermissionRequest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,8 @@ final class AddLayerVersionPermissionRequest extends Input
7878
* StatementId?: string,
7979
* Action?: string,
8080
* Principal?: string,
81-
* OrganizationId?: string,
82-
* RevisionId?: string,
81+
* OrganizationId?: null|string,
82+
* RevisionId?: null|string,
8383
* '@region'?: string|null,
8484
* } $input
8585
*/
@@ -102,8 +102,8 @@ public function __construct(array $input = [])
102102
* StatementId?: string,
103103
* Action?: string,
104104
* Principal?: string,
105-
* OrganizationId?: string,
106-
* RevisionId?: string,
105+
* OrganizationId?: null|string,
106+
* RevisionId?: null|string,
107107
* '@region'?: string|null,
108108
* }|AddLayerVersionPermissionRequest $input
109109
*/

src/Input/DeleteFunctionRequest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ final class DeleteFunctionRequest extends Input
3737
/**
3838
* @param array{
3939
* FunctionName?: string,
40-
* Qualifier?: string,
40+
* Qualifier?: null|string,
4141
* '@region'?: string|null,
4242
* } $input
4343
*/
@@ -51,7 +51,7 @@ public function __construct(array $input = [])
5151
/**
5252
* @param array{
5353
* FunctionName?: string,
54-
* Qualifier?: string,
54+
* Qualifier?: null|string,
5555
* '@region'?: string|null,
5656
* }|DeleteFunctionRequest $input
5757
*/

src/Input/InvocationRequest.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,11 @@ final class InvocationRequest extends Input
7676
/**
7777
* @param array{
7878
* FunctionName?: string,
79-
* InvocationType?: InvocationType::*,
80-
* LogType?: LogType::*,
81-
* ClientContext?: string,
82-
* Payload?: string,
83-
* Qualifier?: string,
79+
* InvocationType?: null|InvocationType::*,
80+
* LogType?: null|LogType::*,
81+
* ClientContext?: null|string,
82+
* Payload?: null|string,
83+
* Qualifier?: null|string,
8484
* '@region'?: string|null,
8585
* } $input
8686
*/
@@ -98,11 +98,11 @@ public function __construct(array $input = [])
9898
/**
9999
* @param array{
100100
* FunctionName?: string,
101-
* InvocationType?: InvocationType::*,
102-
* LogType?: LogType::*,
103-
* ClientContext?: string,
104-
* Payload?: string,
105-
* Qualifier?: string,
101+
* InvocationType?: null|InvocationType::*,
102+
* LogType?: null|LogType::*,
103+
* ClientContext?: null|string,
104+
* Payload?: null|string,
105+
* Qualifier?: null|string,
106106
* '@region'?: string|null,
107107
* }|InvocationRequest $input
108108
*/

src/Input/ListFunctionsRequest.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ final class ListFunctionsRequest extends Input
4343

4444
/**
4545
* @param array{
46-
* MasterRegion?: string,
47-
* FunctionVersion?: FunctionVersion::*,
48-
* Marker?: string,
49-
* MaxItems?: int,
46+
* MasterRegion?: null|string,
47+
* FunctionVersion?: null|FunctionVersion::*,
48+
* Marker?: null|string,
49+
* MaxItems?: null|int,
5050
* '@region'?: string|null,
5151
* } $input
5252
*/
@@ -61,10 +61,10 @@ public function __construct(array $input = [])
6161

6262
/**
6363
* @param array{
64-
* MasterRegion?: string,
65-
* FunctionVersion?: FunctionVersion::*,
66-
* Marker?: string,
67-
* MaxItems?: int,
64+
* MasterRegion?: null|string,
65+
* FunctionVersion?: null|FunctionVersion::*,
66+
* Marker?: null|string,
67+
* MaxItems?: null|int,
6868
* '@region'?: string|null,
6969
* }|ListFunctionsRequest $input
7070
*/

src/Input/ListLayerVersionsRequest.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ final class ListLayerVersionsRequest extends Input
5656

5757
/**
5858
* @param array{
59-
* CompatibleRuntime?: Runtime::*,
59+
* CompatibleRuntime?: null|Runtime::*,
6060
* LayerName?: string,
61-
* Marker?: string,
62-
* MaxItems?: int,
63-
* CompatibleArchitecture?: Architecture::*,
61+
* Marker?: null|string,
62+
* MaxItems?: null|int,
63+
* CompatibleArchitecture?: null|Architecture::*,
6464
* '@region'?: string|null,
6565
* } $input
6666
*/
@@ -76,11 +76,11 @@ public function __construct(array $input = [])
7676

7777
/**
7878
* @param array{
79-
* CompatibleRuntime?: Runtime::*,
79+
* CompatibleRuntime?: null|Runtime::*,
8080
* LayerName?: string,
81-
* Marker?: string,
82-
* MaxItems?: int,
83-
* CompatibleArchitecture?: Architecture::*,
81+
* Marker?: null|string,
82+
* MaxItems?: null|int,
83+
* CompatibleArchitecture?: null|Architecture::*,
8484
* '@region'?: string|null,
8585
* }|ListLayerVersionsRequest $input
8686
*/

src/Input/ListVersionsByFunctionRequest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ final class ListVersionsByFunctionRequest extends Input
4545
/**
4646
* @param array{
4747
* FunctionName?: string,
48-
* Marker?: string,
49-
* MaxItems?: int,
48+
* Marker?: null|string,
49+
* MaxItems?: null|int,
5050
* '@region'?: string|null,
5151
* } $input
5252
*/
@@ -61,8 +61,8 @@ public function __construct(array $input = [])
6161
/**
6262
* @param array{
6363
* FunctionName?: string,
64-
* Marker?: string,
65-
* MaxItems?: int,
64+
* Marker?: null|string,
65+
* MaxItems?: null|int,
6666
* '@region'?: string|null,
6767
* }|ListVersionsByFunctionRequest $input
6868
*/

src/Input/PublishLayerVersionRequest.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,11 @@ final class PublishLayerVersionRequest extends Input
7474
/**
7575
* @param array{
7676
* LayerName?: string,
77-
* Description?: string,
77+
* Description?: null|string,
7878
* Content?: LayerVersionContentInput|array,
79-
* CompatibleRuntimes?: array<Runtime::*>,
80-
* LicenseInfo?: string,
81-
* CompatibleArchitectures?: array<Architecture::*>,
79+
* CompatibleRuntimes?: null|array<Runtime::*>,
80+
* LicenseInfo?: null|string,
81+
* CompatibleArchitectures?: null|array<Architecture::*>,
8282
* '@region'?: string|null,
8383
* } $input
8484
*/
@@ -96,11 +96,11 @@ public function __construct(array $input = [])
9696
/**
9797
* @param array{
9898
* LayerName?: string,
99-
* Description?: string,
99+
* Description?: null|string,
100100
* Content?: LayerVersionContentInput|array,
101-
* CompatibleRuntimes?: array<Runtime::*>,
102-
* LicenseInfo?: string,
103-
* CompatibleArchitectures?: array<Architecture::*>,
101+
* CompatibleRuntimes?: null|array<Runtime::*>,
102+
* LicenseInfo?: null|string,
103+
* CompatibleArchitectures?: null|array<Architecture::*>,
104104
* '@region'?: string|null,
105105
* }|PublishLayerVersionRequest $input
106106
*/

src/LambdaClient.php

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ class LambdaClient extends AbstractApi
8282
* StatementId: string,
8383
* Action: string,
8484
* Principal: string,
85-
* OrganizationId?: string,
86-
* RevisionId?: string,
85+
* OrganizationId?: null|string,
86+
* RevisionId?: null|string,
8787
* '@region'?: string|null,
8888
* }|AddLayerVersionPermissionRequest $input
8989
*
@@ -124,7 +124,7 @@ public function addLayerVersionPermission($input): AddLayerVersionPermissionResp
124124
*
125125
* @param array{
126126
* FunctionName: string,
127-
* Qualifier?: string,
127+
* Qualifier?: null|string,
128128
* '@region'?: string|null,
129129
* }|DeleteFunctionRequest $input
130130
*
@@ -193,11 +193,11 @@ public function deleteFunction($input): Result
193193
*
194194
* @param array{
195195
* FunctionName: string,
196-
* InvocationType?: InvocationType::*,
197-
* LogType?: LogType::*,
198-
* ClientContext?: string,
199-
* Payload?: string,
200-
* Qualifier?: string,
196+
* InvocationType?: null|InvocationType::*,
197+
* LogType?: null|LogType::*,
198+
* ClientContext?: null|string,
199+
* Payload?: null|string,
200+
* Qualifier?: null|string,
201201
* '@region'?: string|null,
202202
* }|InvocationRequest $input
203203
*
@@ -286,10 +286,10 @@ public function invoke($input): InvocationResponse
286286
* @see https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-lambda-2015-03-31.html#listfunctions
287287
*
288288
* @param array{
289-
* MasterRegion?: string,
290-
* FunctionVersion?: FunctionVersion::*,
291-
* Marker?: string,
292-
* MaxItems?: int,
289+
* MasterRegion?: null|string,
290+
* FunctionVersion?: null|FunctionVersion::*,
291+
* Marker?: null|string,
292+
* MaxItems?: null|int,
293293
* '@region'?: string|null,
294294
* }|ListFunctionsRequest $input
295295
*
@@ -321,11 +321,11 @@ public function listFunctions($input = []): ListFunctionsResponse
321321
* @see https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-lambda-2015-03-31.html#listlayerversions
322322
*
323323
* @param array{
324-
* CompatibleRuntime?: Runtime::*,
324+
* CompatibleRuntime?: null|Runtime::*,
325325
* LayerName: string,
326-
* Marker?: string,
327-
* MaxItems?: int,
328-
* CompatibleArchitecture?: Architecture::*,
326+
* Marker?: null|string,
327+
* MaxItems?: null|int,
328+
* CompatibleArchitecture?: null|Architecture::*,
329329
* '@region'?: string|null,
330330
* }|ListLayerVersionsRequest $input
331331
*
@@ -358,8 +358,8 @@ public function listLayerVersions($input): ListLayerVersionsResponse
358358
*
359359
* @param array{
360360
* FunctionName: string,
361-
* Marker?: string,
362-
* MaxItems?: int,
361+
* Marker?: null|string,
362+
* MaxItems?: null|int,
363363
* '@region'?: string|null,
364364
* }|ListVersionsByFunctionRequest $input
365365
*
@@ -394,11 +394,11 @@ public function listVersionsByFunction($input): ListVersionsByFunctionResponse
394394
*
395395
* @param array{
396396
* LayerName: string,
397-
* Description?: string,
397+
* Description?: null|string,
398398
* Content: LayerVersionContentInput|array,
399-
* CompatibleRuntimes?: array<Runtime::*>,
400-
* LicenseInfo?: string,
401-
* CompatibleArchitectures?: array<Architecture::*>,
399+
* CompatibleRuntimes?: null|array<Runtime::*>,
400+
* LicenseInfo?: null|string,
401+
* CompatibleArchitectures?: null|array<Architecture::*>,
402402
* '@region'?: string|null,
403403
* }|PublishLayerVersionRequest $input
404404
*

0 commit comments

Comments
 (0)