Files
sphinx/tests/roots/test-ext-autodoc/target/annotated.py

43 lines
869 B
Python

# from __future__ import annotations
import dataclasses
import types
from typing import Annotated
@dataclasses.dataclass(frozen=True)
class FuncValidator:
func: types.FunctionType
@dataclasses.dataclass(frozen=True)
class MaxLen:
max_length: int
whitelisted_words: list[str]
def validate(value: str) -> str:
return value
#: Type alias for a validated string.
ValidatedString = Annotated[str, FuncValidator(validate)]
def hello(name: Annotated[str, "attribute"]) -> None:
"""docstring"""
pass
class AnnotatedAttributes:
"""docstring"""
#: Docstring about the ``name`` attribute.
name: Annotated[str, "attribute"]
#: Docstring about the ``max_len`` attribute.
max_len: list[Annotated[str, MaxLen(10, ['word_one', 'word_two'])]]
#: Docstring about the ``validated`` attribute.
validated: ValidatedString