B e]% @sddlmZddlZddlmZmZedddZGdddeZGd d d e Z Gd d d e Z Gd dde Z Gddde Z GdddeZdS))unicode_literalsN)TracebackPrinter format_reprZthinc)zcheck.py)Ztb_baseZ tb_excludec@seZdZddZdS)UndefinedOperatorErrorc CsNt|_t|tdj|ddj||ddjd|d|j|ddS) NzUndefined operator: {op})opzCalled by ({arg1}, {arg2}))arg1arg2zAvailable: {ops}z, )ops)tb highlight) traceback extract_stackr TypeError__init__ get_errorformatjoinkeys)selfrrr operatorsr3/tmp/pip-install-b8evvk6i/thinc/thinc/exceptions.pyr s   zUndefinedOperatorError.__init__N)__name__ __module__ __qualname__rrrrrr src@seZdZddZdS)OutsideRangeErrorc Cs8t|_t|tdjt||t|d|jddS)Nz'Outside range: {v} needs to be {o} {v2})voZv2)r )r r r ValueErrorrrrr)rargvaloperatorrrrrs zOutsideRangeError.__init__N)rrrrrrrrrsrc@seZdZddZdS)DifferentLengthErrorcCs0t|_t|tdjt|d|jddS)Nz#Values need to be equal length: {v})r)r )r r r rrrrr)rlengthsrrrrr)s  zDifferentLengthError.__init__N)rrrrrrrrr"(sr"c@seZdZddZdS)ShapeMismatchErrorcCs>t|_t|}t|}t|tdj||d|jddS)Nz2Shape mismatch: input {s} not compatible with {d}.)sd)r )r r r rrrrr)rshapeZdimZ shape_namesrrrr5s zShapeMismatchError.__init__N)rrrrrrrrr$4sr$c@seZdZddZdS)TooFewDimensionsErrorcCs2t|_t|tdjt||d|jddS)Nz5Shape mismatch: input {s} has too short for axis {d}.)r%r&)r )r r r rrrrr)rr'ZaxisrrrrEs  zTooFewDimensionsError.__init__N)rrrrrrrrr(Dsr(c@seZdZdZddZdS)ExpectedTypeErrorc CsTt|tr|g}t|_t|tdjd |t |t |d|jt |ddS)Nz%Expected type {e}, but got: {v} ({t})/)ert)r r ) isinstancestrr r r rrrrrrtype)rZbad_typeexpectedrrrrUs  zExpectedTypeError.__init__N)rrrZmax_to_print_of_valuerrrrrr)Rsr)) __future__rr Zwasabirrrrrrrr"r$r(r)rrrrs