from dependency_injector import containers, providers from .column import Column from .database import Database from .graph import Graph from .index import Index from .partition import Partition from .table import Table class SchemaContainer(containers.DeclarativeContainer): sampler = providers.Dependency() column = providers.Factory( Column, sampler_factory=sampler.provider, ) table = providers.Factory( Table, column_factory=column.provider, index_factory=Index, partition_factory=Partition, ) database = providers.Factory( Database, table_factory=table.provider, ) __all__ = ["Graph"]