<reponame>dlski/python-di
from di.core.assignment.base import (
    Assignment,
    AssignmentError,
    AssignmentFactory,
    AssignmentFactorySelector,
    Matcher,
    ValuesMapper,
)
from di.core.assignment.factories import (
    AggregationAssignmentFactory,
    DirectAssignmentFactory,
)
from di.core.assignment.mappers import MixedIterableValuesMapper, SingleValuesMapper
from di.core.assignment.matchers import (
    BaseTypeMatcher,
    DirectMatcher,
    TypeAggregationMatcher,
    TypeIterableMatcher,
    TypeMatcher,
)
from di.core.assignment.selectors import DirectAssignmentFactorySelector

__all__ = [
    # base
    "Assignment",
    "AssignmentError",
    "AssignmentFactory",
    "AssignmentFactorySelector",
    "Matcher",
    "ValuesMapper",
    # factories
    "AggregationAssignmentFactory",
    "DirectAssignmentFactory",
    # mappers
    "MixedIterableValuesMapper",
    "SingleValuesMapper",
    # matchers
    "BaseTypeMatcher",
    "DirectMatcher",
    "TypeAggregationMatcher",
    "TypeIterableMatcher",
    "TypeMatcher",
    # selectors
    "DirectAssignmentFactorySelector",
]

from di.core.assignment.base import (
    Assignment,
    AssignmentError,
    AssignmentFactory,
    AssignmentFactorySelector,
    Matcher,
    ValuesMapper,
)
from di.core.assignment.factories import (
    AggregationAssignmentFactory,
    DirectAssignmentFactory,
)
from di.core.assignment.mappers import MixedIterableValuesMapper, SingleValuesMapper
from di.core.assignment.matchers import (
    BaseTypeMatcher,
    DirectMatcher,
    TypeAggregationMatcher,
    TypeIterableMatcher,
    TypeMatcher,
)
from di.core.assignment.selectors import DirectAssignmentFactorySelector

__all__ = [
    # base
    "Assignment",
    "AssignmentError",
    "AssignmentFactory",
    "AssignmentFactorySelector",
    "Matcher",
    "ValuesMapper",
    # factories
    "AggregationAssignmentFactory",
    "DirectAssignmentFactory",
    # mappers
    "MixedIterableValuesMapper",
    "SingleValuesMapper",
    # matchers
    "BaseTypeMatcher",
    "DirectMatcher",
    "TypeAggregationMatcher",
    "TypeIterableMatcher",
    "TypeMatcher",
    # selectors
    "DirectAssignmentFactorySelector",
]
# base # factories # mappers # matchers # selectors