Skip to content

Pydantic generator

Pydantic generator v2.

Classes:

Name Description
PydanticGenerator

Handles Pydantic model generation using Jinja2 templates.

PydanticGenerator

Handles Pydantic model generation using Jinja2 templates.

Methods:

Name Description
__init__

Configura Jinja para leer desde el paquete pymodeller/templates.

generate_base_class

Generates the static base class needed for tracking.

generate_files

Generate pydantic files.

generate_general_settings

Render general settings.

generate_import

Generate import.

generate_init

sections_info debe ser una lista de dicts.

generate_master

Generate master file.

generate_module_class_name

Generate module and class names.

get_default_expr

Generate the default value expression for the Field.

get_python_type

Resolve Pydantic/Python type string.

render_section

Prepares context and renders the Jinja template.

__init__

__init__() -> None

Configura Jinja para leer desde el paquete pymodeller/templates.

generate_base_class

generate_base_class(out_path: Path) -> None

Generates the static base class needed for tracking.

generate_files

generate_files(
    yaml_hash: str, s: EnvSpec, out: Path, master: Path
) -> tuple

Generate pydantic files.

generate_general_settings

generate_general_settings(
    general_section: EnvSection,
    nested_sections_list: list,
    out: Path,
) -> None

Render general settings.

generate_import staticmethod

generate_import(master: Path) -> str

Generate import.

generate_init

generate_init(sections: list, out_path: Path) -> None

sections_info debe ser una lista de dicts.

generate_master

generate_master(
    sections: list,
    folder: Path,
    out_path: Path,
    yaml_hash: str,
) -> None

Generate master file.

generate_module_class_name staticmethod

generate_module_class_name(section: EnvSection) -> tuple

Generate module and class names.

get_default_expr staticmethod

get_default_expr(var: EnvVarSpec) -> str

Generate the default value expression for the Field.

get_python_type staticmethod

get_python_type(var: EnvVarSpec) -> str

Resolve Pydantic/Python type string.

render_section

render_section(section: EnvSection) -> str

Prepares context and renders the Jinja template.