
    ^f)                    >    d Z ddlmZ ddlZddlZddlmZ 	 	 ddZdS )zImport related utilities.    )annotationsN)reraise.c           
        |si n|}|t           j        }t          | t                    s| S |                    |           p| } d| v rdn|}|                     |          \  }}}	|sd|r|n|	}}		 	  ||fd|i|}
nW# t          $ rJ}t          t          t          d| d|           t          j	                    d                    Y d}~nd}~ww xY w|	rt          |
|	          n|
S # t          t          f$ r | Y nw xY w|S )a  Get symbol by qualified name.

    The name should be the full dot-separated path to the class::

        modulename.ClassName

    Example::

        celery.concurrency.processes.TaskPool
                                    ^- class name

    or using ':' to separate module and symbol::

        celery.concurrency.processes:TaskPool

    If `aliases` is provided, a dict containing short name/long name
    mappings, the name is looked up in the aliases first.

    Examples
    --------
        >>> symbol_by_name('celery.concurrency.processes.TaskPool')
        <class 'celery.concurrency.processes.TaskPool'>

        >>> symbol_by_name('default', {
        ...     'default': 'celery.concurrency.processes.TaskPool'})
        <class 'celery.concurrency.processes.TaskPool'>

        # Does not try to look up non-string names.
        >>> from celery.concurrency.processes import TaskPool
        >>> symbol_by_name(TaskPool) is TaskPool
        True
    N:packagezCouldn't import z:    )	importlibimport_module
isinstancestrget
rpartition
ValueErrorr   sysexc_infogetattrImportErrorAttributeError)namealiasesimpr   sepdefaultkwargsmodule_name_cls_namemoduleexcs               E/var/www/html/env/lib/python3.11/site-packages/kombu/utils/imports.pysymbol_by_namer"      s   D  ,bbWG
{%dC   ;;t$D###C#s33KH G $&Fggh+
	'S@@g@@@FF 	' 	' 	'JA$AACAABBLNN1%' ' ' ' ' ' ' '	' -5@wvx(((&@(   ? ? Ns7   0A< ;C' <
CA CC' CC' 'C>=C>)NNNr   N)__doc__
__future__r   r
   r   kombu.exceptionsr   r"        r!   <module>r(      sj      " " " " " "     



 $ $ $ $ $ $ :>$(9 9 9 9 9 9r'   