HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/local/lib/python3.10/dist-packages/pydantic/__pycache__/config.cpython-310.pyc
o

|��g��@sRUdZddlmZddlmZddlmZmZm	Z	m
Z
mZmZm
Z
mZddlmZmZmZddlmZddlmZdd	lmZerOdd
lmZddlmZmZdZee e!e"e#d
eddfZ$de%d<e
e"e$fZ&de%d<e	egefZ'ee	e&gd
fe	e&eegd
ffZ(de%d<edZ)Gdd�dedd�Z*e
de+d�Z,ddd�Z-ee.�Z/d
S)z"Configuration for Pydantic models.�)�annotations)�Pattern)�
TYPE_CHECKING�Any�Callable�Dict�List�Type�TypeVar�Union)�Literal�	TypeAlias�	TypedDict�)�getattr_migration)�AliasGenerator)�PydanticUserError)�GenerateSchema)�ComputedFieldInfo�	FieldInfo)�
ConfigDict�with_configN�	JsonValue�JsonDictr
�JsonSchemaExtraCallable)�allow�ignore�forbidc@s�eZdZUdZded<	ded<	ded<	ded	<	ded
<	ded<	ded
<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	ded<	d ed!<	ded"<	d#ed$<	d%ed&<	d'ed(<	d'ed)<	d*ed+<	ded,<	ded-<	d.ed/<	ded0<	ded1<	d2ed3<	d4ed5<	ded6<	d7ed8<	ded9<	d:ed;<	ded<<	ded=<	d>ed?<d@S)Arz/A TypedDict for configuring Pydantic behaviour.z
str | None�titlezCallable[[type], str] | None�model_title_generatorz:Callable[[str, FieldInfo | ComputedFieldInfo], str] | None�field_title_generator�bool�str_to_lower�str_to_upper�str_strip_whitespace�int�str_min_lengthz
int | None�str_max_lengthzExtraValues | None�extra�frozen�populate_by_name�use_enum_values�validate_assignment�arbitrary_types_allowed�from_attributes�loc_by_aliasz,Callable[[str], str] | AliasGenerator | None�alias_generatorztuple[type, ...]�
ignored_types�
allow_inf_nanz)JsonDict | JsonSchemaExtraCallable | None�json_schema_extraz&dict[type[object], JsonEncoder] | None�
json_encoders�strictz0Literal['always', 'never', 'subclass-instances']�revalidate_instanceszLiteral['iso8601', 'float']�ser_json_timedeltaz Literal['utf8', 'base64', 'hex']�ser_json_bytes�val_json_bytesz'Literal['null', 'constants', 'strings']�ser_json_inf_nan�validate_default�validate_returnztuple[str | Pattern[str], ...]�protected_namespaces�hide_input_in_errors�defer_buildzdict[str, object] | None�plugin_settingsztype[_GenerateSchema] | None�schema_generator�+json_schema_serialization_defaults_requiredz,Literal['validation', 'serialization', None]�json_schema_mode_override�coerce_numbers_to_strz"Literal['rust-regex', 'python-re']�regex_engine�validation_error_cause�use_attribute_docstringsz%bool | Literal['all', 'keys', 'none']�
cache_stringsN)�__name__�
__module__�__qualname__�__doc__�__annotations__�rNrN�:/usr/local/lib/python3.10/dist-packages/pydantic/config.pyr"s�
@	&36:
~			]+
	&6%$
%rF)�total�_TypeT)�bound�config�return�Callable[[_TypeT], _TypeT]csd�fdd�}|S)a)Usage docs: https://docs.pydantic.dev/2.10/concepts/config/#configuration-with-dataclass-from-the-standard-library-or-typeddict

    A convenience decorator to set a [Pydantic configuration](config.md) on a `TypedDict` or a `dataclass` from the standard library.

    Although the configuration can be set using the `__pydantic_config__` attribute, it does not play well with type checkers,
    especially with `TypedDict`.

    !!! example "Usage"

        ```python
        from typing_extensions import TypedDict

        from pydantic import ConfigDict, TypeAdapter, with_config

        @with_config(ConfigDict(str_to_lower=True))
        class Model(TypedDict):
            x: str

        ta = TypeAdapter(Model)

        print(ta.validate_python({'x': 'ABC'}))
        #> {'x': 'abc'}
        ```
    �class_rQrTcs4ddlm}||�rtd|j�d�dd���|_|S)Nr)�is_model_classzCannot use `with_config` on z as it is a Pydantic modelzwith-config-on-model)�code)�_internal._utilsrWrrI�__pydantic_config__)rVrW�rSrNrO�inners�zwith_config.<locals>.innerN)rVrQrTrQrN)rSr\rNr[rOr�sr)rSrrTrU)0rL�
__future__r�_annotations�rer�typingrrrrrr	r
r�typing_extensionsrr
r�
_migrationr�aliasesr�errorsr�_internal._generate_schemar�_GenerateSchema�fieldsrr�__all__r%�float�strr!rrMr�JsonEncoderr�ExtraValuesr�typerQrrI�__getattr__rNrNrNrO�<module>s@("��P
+