Skip to content

Commit af0fd1c

Browse files
committed
make type first field and remove Required[]
1 parent 846ba9e commit af0fd1c

File tree

2 files changed

+10
-18
lines changed

2 files changed

+10
-18
lines changed

pydantic_core/core_schema.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1500,13 +1500,13 @@ def __call__(self, __input_value: Any, __info: ModelFieldValidationInfo) -> Any:
15001500

15011501

15021502
class ModelFieldValidatorFunctionSchema(TypedDict):
1503-
call: Required[ModelFieldValidatorFunction]
15041503
type: Literal['method']
1504+
call: ModelFieldValidatorFunction
15051505

15061506

15071507
class ValidatorFunctionSchema(TypedDict):
1508-
call: Required[ValidatorFunction]
15091508
type: Literal['function']
1509+
call: ValidatorFunction
15101510

15111511

15121512
class FunctionSchema(TypedDict, total=False):
@@ -1519,7 +1519,7 @@ class FunctionSchema(TypedDict, total=False):
15191519
serialization: SerSchema
15201520

15211521

1522-
def model_field_function_before_schema(
1522+
def method_before_schema(
15231523
function: ModelFieldValidatorFunction,
15241524
schema: CoreSchema,
15251525
*,
@@ -1538,7 +1538,7 @@ def fn(v: bytes, info: core_schema.ModelFieldValidationInfo) -> str:
15381538
assert info.field_name is not None
15391539
return v.decode() + 'world'
15401540
1541-
func_schema = core_schema.model_field_function_before_schema(function=fn, schema=core_schema.str_schema())
1541+
func_schema = core_schema.method_before_schema(function=fn, schema=core_schema.str_schema())
15421542
schema = core_schema.typed_dict_schema(
15431543
{'a': core_schema.typed_dict_field(func_schema)}
15441544
)
@@ -1715,13 +1715,13 @@ def __call__(
17151715

17161716

17171717
class ModelFieldWrapValidatorFunctionSchema(TypedDict):
1718-
call: Required[ModelFieldWrapValidatorFunction]
17191718
type: Literal['method']
1719+
call: ModelFieldWrapValidatorFunction
17201720

17211721

17221722
class WrapValidatorFunctionSchema(TypedDict):
1723-
call: Required[WrapValidatorFunction]
17241723
type: Literal['function']
1724+
call: WrapValidatorFunction
17251725

17261726

17271727
class FunctionWrapSchema(TypedDict, total=False):
@@ -1776,7 +1776,7 @@ def fn(v: str, validator: core_schema.CallableValidator, info: core_schema.Valid
17761776
)
17771777

17781778

1779-
def model_field_function_wrap_schema(
1779+
def method_wrap_schema(
17801780
function: ModelFieldWrapValidatorFunction,
17811781
schema: CoreSchema,
17821782
*,
@@ -1797,7 +1797,7 @@ def fn(v: bytes, validator: core_schema.CallableValidator, info: core_schema.Mod
17971797
assert info.field_name is not None
17981798
return validator(v) + 'world'
17991799
1800-
func_schema = core_schema.model_field_function_wrap_schema(function=fn, schema=core_schema.str_schema())
1800+
func_schema = core_schema.method_wrap_schema(function=fn, schema=core_schema.str_schema())
18011801
schema = core_schema.typed_dict_schema(
18021802
{'a': core_schema.typed_dict_field(func_schema)}
18031803
)

tests/validators/test_function.py

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -460,11 +460,7 @@ def f(input_value: Any, info: core_schema.ModelFieldValidationInfo) -> Any:
460460
core_schema.model_schema(
461461
Model,
462462
core_schema.typed_dict_schema(
463-
{
464-
'x': core_schema.typed_dict_field(
465-
core_schema.model_field_function_before_schema(f, core_schema.str_schema())
466-
)
467-
}
463+
{'x': core_schema.typed_dict_field(core_schema.method_before_schema(f, core_schema.str_schema()))}
468464
),
469465
)
470466
)
@@ -543,11 +539,7 @@ def f(input_value: Any, val: core_schema.CallableValidator, info: core_schema.Mo
543539
core_schema.model_schema(
544540
Model,
545541
core_schema.typed_dict_schema(
546-
{
547-
'x': core_schema.typed_dict_field(
548-
core_schema.model_field_function_wrap_schema(f, core_schema.str_schema())
549-
)
550-
}
542+
{'x': core_schema.typed_dict_field(core_schema.method_wrap_schema(f, core_schema.str_schema()))}
551543
),
552544
)
553545
)

0 commit comments

Comments
 (0)