# Path: pytablereader/_constant.py
# class Default:
#     ENCODING = "utf-8"
# 
# Path: pytablereader/error.py
# class LoaderNotFoundError(Exception):
#     """
#     Exception raised when loader not found.
#     """


import abc
import warnings
from mbstrdecoder import MultiByteStrDecoder
from .._constant import Default
from ..error import LoaderNotFoundError
        :rtype: list
        """

        return sorted(self._get_format_name_loader_mapping())

    def get_format_name_list(self):
        warnings.warn("'get_format_name_list' has moved to 'get_format_names'", DeprecationWarning)
        return self.get_format_names()

    def get_extensions(self):
        """
        :return: Available format file extensions.
        :rtype: list
        """

        return sorted(self._get_extension_loader_mapping())

    def get_extension_list(self):
        warnings.warn("'get_extension_list' has moved to 'get_extensions'", DeprecationWarning)
        return self.get_extensions()

    def _get_loader_class(self, loader_mapping, format_name):
        try:
            format_name = format_name.casefold()
        except AttributeError:
            raise TypeError("format name must be a string")

        try:
            return loader_mapping[format_name]
        except KeyError:

# Path: pytablereader/_constant.py
# class Default:
#     ENCODING = "utf-8"
# 
# Path: pytablereader/error.py
# class LoaderNotFoundError(Exception):
#     """
#     Exception raised when loader not found.
#     """


# Path: pytablereader/factory/_base.py
import abc
import warnings
from mbstrdecoder import MultiByteStrDecoder
from .._constant import Default
from ..error import LoaderNotFoundError

        :rtype: list
        """

        return sorted(self._get_format_name_loader_mapping())

    def get_format_name_list(self):
        warnings.warn("'get_format_name_list' has moved to 'get_format_names'", DeprecationWarning)
        return self.get_format_names()

    def get_extensions(self):
        """
        :return: Available format file extensions.
        :rtype: list
        """

        return sorted(self._get_extension_loader_mapping())

    def get_extension_list(self):
        warnings.warn("'get_extension_list' has moved to 'get_extensions'", DeprecationWarning)
        return self.get_extensions()

    def _get_loader_class(self, loader_mapping, format_name):
        try:
            format_name = format_name.casefold()
        except AttributeError:
            raise TypeError("format name must be a string")

        try:
            return loader_mapping[format_name]
        except KeyError:

            raise LoaderNotFoundError(