Home / Class/ _DeprecatedProperty Class — langchain Architecture

_DeprecatedProperty Class — langchain Architecture

Architecture documentation for the _DeprecatedProperty class in deprecation.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  edbd25d1_fb6f_0238_5145_8346569f1c00["_DeprecatedProperty"]
  94320bb6_6e56_d7f5_79eb_9674de780d72["deprecation.py"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|defined in| 94320bb6_6e56_d7f5_79eb_9674de780d72
  a93a0b90_e8de_e2e6_2673_2669e8e361be["__init__()"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|method| a93a0b90_e8de_e2e6_2673_2669e8e361be
  a7589490_11ec_25c1_53a8_70130e873565["__get__()"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|method| a7589490_11ec_25c1_53a8_70130e873565
  932362e6_c804_0649_5de6_75638718a7ea["__set__()"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|method| 932362e6_c804_0649_5de6_75638718a7ea
  c1ba0df0_60f1_7cab_cd6b_4f2dddd9fc69["__delete__()"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|method| c1ba0df0_60f1_7cab_cd6b_4f2dddd9fc69
  731ca41c_2bc3_8c4f_c95b_9a8ab858c5a4["__set_name__()"]
  edbd25d1_fb6f_0238_5145_8346569f1c00 -->|method| 731ca41c_2bc3_8c4f_c95b_9a8ab858c5a4

Relationship Graph

Source Code

libs/core/langchain_core/_api/deprecation.py lines 299–336

            class _DeprecatedProperty(property):
                """A deprecated property."""

                def __init__(
                    self,
                    fget: Callable[[Any], Any] | None = None,
                    fset: Callable[[Any, Any], None] | None = None,
                    fdel: Callable[[Any], None] | None = None,
                    doc: str | None = None,
                ) -> None:
                    super().__init__(fget, fset, fdel, doc)
                    self.__orig_fget = fget
                    self.__orig_fset = fset
                    self.__orig_fdel = fdel

                def __get__(self, instance: Any, owner: type | None = None) -> Any:
                    if instance is not None or owner is not None:
                        emit_warning()
                    if self.fget is None:
                        return None
                    return self.fget(instance)

                def __set__(self, instance: Any, value: Any) -> None:
                    if instance is not None:
                        emit_warning()
                    if self.fset is not None:
                        self.fset(instance, value)

                def __delete__(self, instance: Any) -> None:
                    if instance is not None:
                        emit_warning()
                    if self.fdel is not None:
                        self.fdel(instance)

                def __set_name__(self, owner: type | None, set_name: str) -> None:
                    nonlocal _name
                    if _name == "<lambda>":
                        _name = set_name

Frequently Asked Questions

What is the _DeprecatedProperty class?
_DeprecatedProperty is a class in the langchain codebase, defined in libs/core/langchain_core/_api/deprecation.py.
Where is _DeprecatedProperty defined?
_DeprecatedProperty is defined in libs/core/langchain_core/_api/deprecation.py at line 299.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free