mirror of https://github.com/python/cpython
Fix minor docstring issues in `dataclasses.py`. (gh-93024)
Previously, when using `functools.wrap` around them (and inherit their docstrings), sphinx renders the docstrings badly and raises warnings about wrong indent.
This commit is contained in:
parent
75c0c1b993
commit
b8c528694e
|
@ -1255,7 +1255,7 @@ def asdict(obj, *, dict_factory=dict):
|
|||
"""Return the fields of a dataclass instance as a new dictionary mapping
|
||||
field names to field values.
|
||||
|
||||
Example usage:
|
||||
Example usage::
|
||||
|
||||
@dataclass
|
||||
class C:
|
||||
|
@ -1326,8 +1326,8 @@ def astuple(obj, *, tuple_factory=tuple):
|
|||
x: int
|
||||
y: int
|
||||
|
||||
c = C(1, 2)
|
||||
assert astuple(c) == (1, 2)
|
||||
c = C(1, 2)
|
||||
assert astuple(c) == (1, 2)
|
||||
|
||||
If given, 'tuple_factory' will be used instead of built-in tuple.
|
||||
The function applies recursively to field values that are
|
||||
|
@ -1376,11 +1376,11 @@ def make_dataclass(cls_name, fields, *, bases=(), namespace=None, init=True,
|
|||
The dataclass name will be 'cls_name'. 'fields' is an iterable
|
||||
of either (name), (name, type) or (name, type, Field) objects. If type is
|
||||
omitted, use the string 'typing.Any'. Field objects are created by
|
||||
the equivalent of calling 'field(name, type [, Field-info])'.
|
||||
the equivalent of calling 'field(name, type [, Field-info])'.::
|
||||
|
||||
C = make_dataclass('C', ['x', ('y', int), ('z', int, field(init=False))], bases=(Base,))
|
||||
|
||||
is equivalent to:
|
||||
is equivalent to::
|
||||
|
||||
@dataclass
|
||||
class C(Base):
|
||||
|
@ -1444,7 +1444,7 @@ def make_dataclass(cls_name, fields, *, bases=(), namespace=None, init=True,
|
|||
def replace(obj, /, **changes):
|
||||
"""Return a new object replacing specified fields with new values.
|
||||
|
||||
This is especially useful for frozen classes. Example usage:
|
||||
This is especially useful for frozen classes. Example usage::
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class C:
|
||||
|
@ -1454,7 +1454,7 @@ def replace(obj, /, **changes):
|
|||
c = C(1, 2)
|
||||
c1 = replace(c, x=3)
|
||||
assert c1.x == 3 and c1.y == 2
|
||||
"""
|
||||
"""
|
||||
|
||||
# We're going to mutate 'changes', but that's okay because it's a
|
||||
# new dict, even if called with 'replace(obj, **my_changes)'.
|
||||
|
|
Loading…
Reference in New Issue