o
    rZhr	                     @   sL   d dl mZ d dlmZ d dlmZ d dlmZ G dd deeZdgZ	dS )    )raise_unorderable_types)ProbabilisticMixInImmutableProbabilisticTree)Treec                   @   sT   e Zd ZdddZdd Zdd Zdd	 ZdddZedd Z	dd Z
dd ZdS )ProbabilisticTreeNc                 K   s$   t | || tj| fi | d S N)r   __init__r   )selfnodechildrenZprob_kwargs r   F/var/www/auris/lib/python3.10/site-packages/nltk/tree/probabilistic.pyr	      s   zProbabilisticTree.__init__c                 C   s   t S r   r   r
   r   r   r   _frozen_class   s   zProbabilisticTree._frozen_classc                 C   s   t |  d|  dS )N (p=))r   __repr__probr   r   r   r   r      s   zProbabilisticTree.__repr__c                 C   s   | j dd d|  ddS )N<   )marginr   z.6gr   )pformatr   r   r   r   r   __str__"   s   zProbabilisticTree.__str__Fc                 C   s*   |st | | j| |  dS t | | S )Nr   )type_labelr   convert)r
   deepr   r   r   copy%   s   zProbabilisticTree.copyc                    sN   t |tr% fdd|D }t |tr |j|| dS  |j|ddS |S )Nc                    s   g | ]}  |qS r   )r   ).0childclsr   r   
<listcomp>.   s    z-ProbabilisticTree.convert.<locals>.<listcomp>r   g      ?)
isinstancer   r   r   r   )r"   valr   r   r!   r   r   +   s   

zProbabilisticTree.convertc                 C   s4   | j |j u o| jt| |  f|jt|| fkS r   )	__class__r   listr   r
   otherr   r   r   __eq__6   s   zProbabilisticTree.__eq__c                 C   sZ   t |tstd| | | j|ju r%| jt| |  f|jt|| fk S | jj|jjk S )N<)r$   r   r   r&   r   r'   r   __name__r(   r   r   r   __lt__=   s   
zProbabilisticTree.__lt__r   )F)r,   
__module____qualname__r	   r   r   r   r   classmethodr   r*   r-   r   r   r   r   r      s    



r   N)
Znltk.internalsr   Znltk.probabilityr   Znltk.tree.immutabler   Znltk.tree.treer   r   __all__r   r   r   r   <module>   s   
4