graph LR
SQLAlchemy_Adapter["SQLAlchemy Adapter"]
Beanie_ODM_Adapter["Beanie ODM Adapter"]
Tortoise_ORM_Adapter["Tortoise ORM Adapter"]
PyMongo_Adapter["PyMongo Adapter"]
SQLModel_Adapter["SQLModel Adapter"]
Motor_Adapter["Motor Adapter"]
Shared_Utilities["Shared Utilities"]
Internal_Pagination_Flow_Functions["Internal Pagination Flow Functions"]
SQLAlchemy_Adapter -- "calls" --> Shared_Utilities
SQLAlchemy_Adapter -- "delegates to" --> Internal_Pagination_Flow_Functions
Beanie_ODM_Adapter -- "utilizes" --> Shared_Utilities
Beanie_ODM_Adapter -- "delegates to" --> Internal_Pagination_Flow_Functions
Tortoise_ORM_Adapter -- "depends on" --> Shared_Utilities
PyMongo_Adapter -- "leverages" --> Shared_Utilities
PyMongo_Adapter -- "interacts with" --> Internal_Pagination_Flow_Functions
SQLModel_Adapter -- "relies on" --> Shared_Utilities
SQLModel_Adapter -- "delegates to" --> Internal_Pagination_Flow_Functions
Motor_Adapter -- "uses" --> Shared_Utilities
Motor_Adapter -- "interacts with" --> Internal_Pagination_Flow_Functions
The Database/ORM Adapters subsystem provides specific implementations for integrating the core pagination logic with various database ORMs/ODMs, translating generic pagination requests into database-specific queries.
Provides pagination logic for SQLAlchemy queries, supporting both synchronous and asynchronous operations. It translates generic pagination requests into SQLAlchemy-specific query modifications (e.g., limit, offset) and exposes public pagination functions.
Related Classes/Methods:
Implements pagination for Beanie ODM, primarily for MongoDB, including cursor-based pagination. It provides public API functions for Beanie models.
Related Classes/Methods:
Integrates pagination with Tortoise ORM, handling query modifications for asynchronous relational database operations and exposing pagination functions.
Related Classes/Methods:
Focuses on pagination for raw PyMongo aggregation pipelines, adapting pagination concepts to MongoDB's aggregation framework and providing corresponding public API.
Related Classes/Methods:
Extends pagination capabilities to SQLModel, leveraging its SQLAlchemy foundation for query construction and offering SQLModel-specific pagination functions.
Related Classes/Methods:
Provides asynchronous pagination for Motor, the async PyMongo driver, similar to PyMongo but for async contexts, with dedicated pagination functions.
Related Classes/Methods:
Contains common helper functions, decorators, and base classes used across various ORM/ODM adapters to reduce code duplication and enforce consistency in pagination logic.
Related Classes/Methods:
Encapsulate the specific logic for applying pagination (e.g., limit-offset, cursor-based, or aggregation) to the underlying database query, including query modification and result processing. These functions are internal to each adapter's implementation.
Related Classes/Methods: