MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / _generate_dc_transforms

Function _generate_dc_transforms

lib/sqlalchemy/orm/decl_api.py:568–602  ·  view source on GitHub ↗
(
    cls_: Type[_O],
    init: Union[_NoArg, bool] = _NoArg.NO_ARG,
    repr: Union[_NoArg, bool] = _NoArg.NO_ARG,  # noqa: A002
    eq: Union[_NoArg, bool] = _NoArg.NO_ARG,
    order: Union[_NoArg, bool] = _NoArg.NO_ARG,
    unsafe_hash: Union[_NoArg, bool] = _NoArg.NO_ARG,
    match_args: Union[_NoArg, bool] = _NoArg.NO_ARG,
    kw_only: Union[_NoArg, bool] = _NoArg.NO_ARG,
    dataclass_callable: Union[
        _NoArg, Callable[..., Type[Any]]
    ] = _NoArg.NO_ARG,
)

Source from the content-addressed store, hash-verified

566
567
568def _generate_dc_transforms(
569 cls_: Type[_O],
570 init: Union[_NoArg, bool] = _NoArg.NO_ARG,
571 repr: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002
572 eq: Union[_NoArg, bool] = _NoArg.NO_ARG,
573 order: Union[_NoArg, bool] = _NoArg.NO_ARG,
574 unsafe_hash: Union[_NoArg, bool] = _NoArg.NO_ARG,
575 match_args: Union[_NoArg, bool] = _NoArg.NO_ARG,
576 kw_only: Union[_NoArg, bool] = _NoArg.NO_ARG,
577 dataclass_callable: Union[
578 _NoArg, Callable[..., Type[Any]]
579 ] = _NoArg.NO_ARG,
580) -> None:
581 apply_dc_transforms: _DataclassArguments = {
582 "init": init,
583 "repr": repr,
584 "eq": eq,
585 "order": order,
586 "unsafe_hash": unsafe_hash,
587 "match_args": match_args,
588 "kw_only": kw_only,
589 "dataclass_callable": dataclass_callable,
590 }
591
592 if hasattr(cls_, "_sa_apply_dc_transforms"):
593 current = cls_._sa_apply_dc_transforms # type: ignore[attr-defined]
594
595 _DeclarativeMapperConfig._assert_dc_arguments(current)
596
597 cls_._sa_apply_dc_transforms = { # type: ignore # noqa: E501
598 k: current.get(k, _NoArg.NO_ARG) if v is _NoArg.NO_ARG else v
599 for k, v in apply_dc_transforms.items()
600 }
601 else:
602 setattr(cls_, "_sa_apply_dc_transforms", apply_dc_transforms)
603
604
605class MappedAsDataclass(metaclass=DCTransformDeclarative):

Callers 2

__init_subclass__Method · 0.85
decorateFunction · 0.85

Calls 3

_assert_dc_argumentsMethod · 0.80
getMethod · 0.45
itemsMethod · 0.45

Tested by

no test coverage detected