Spaces:
Runtime error
Runtime error
| """ | |
| Модуль содержит базовый интерфейс для всех структурных элементов документа. | |
| """ | |
| from abc import ABC, abstractmethod | |
| from dataclasses import dataclass | |
| from typing import Any, Callable | |
| class ParsedStructure(ABC): | |
| """ | |
| Базовый абстрактный класс для всех структурных элементов документа. | |
| """ | |
| def to_string(self) -> str: | |
| """ | |
| Преобразует структуру в строковое представление. | |
| Returns: | |
| str: Строковое представление структуры. | |
| """ | |
| pass | |
| def apply(self, func: Callable[[str], str]) -> None: | |
| """ | |
| Применяет трансформации к строковым элементам, | |
| аналогично функции apply в pandas. | |
| Args: | |
| func (Callable[[str], str]): Функция для применения к строковым элементам. | |
| """ | |
| pass | |
| def to_dict(self) -> dict[str, Any]: | |
| """ | |
| Преобразует структуру в словарь. | |
| Returns: | |
| dict[str, Any]: Словарное представление структуры. | |
| """ | |
| pass | |
| class DocumentElement(ParsedStructure): | |
| """ | |
| Базовый класс для всех элементов документа (параграфы, таблицы, изображения, формулы). | |
| """ | |
| # Номер страницы, на которой находится элемент | |
| page_number: int | None = None | |
| # Индекс элемента в документе (порядковый номер) | |
| index_in_document: int | None = None | |