U C^% @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, )opstbZ highlight) traceback extract_stackr TypeError__init__ get_errorformatjoinkeys)selfrrr operatorsr3/tmp/pip-install-6_kvzl1k/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})voZv2r r r r ValueErrorrrrr)rargvaloperatorrrrrs zOutsideRangeError.__init__Nrrrrrrsrc@seZdZddZdS)DifferentLengthErrorcCs0t|_t|tdjt|d|jddS)Nz#Values need to be equal length: {v})rrr )rlengthsr"rrrr)s zDifferentLengthError.__init__Nrrrrrr%(sr%c@seZdZddZdS)ShapeMismatchErrorcCs>t|_t|}t|}t|tdj||d|jddS)Nz2Shape mismatch: input {s} not compatible with {d}.sdr)r r r rr!rrr)rshapeZdimZ shape_namesrrrr5s zShapeMismatchError.__init__Nrrrrrr'4sr'c@seZdZddZdS)TooFewDimensionsErrorcCs2t|_t|tdjt||d|jddS)Nz5Shape mismatch: input {s} has too short for axis {d}.r(rr )rr+ZaxisrrrrEs zTooFewDimensionsError.__init__Nrrrrrr,Dsr,c@seZdZdZddZdS)ExpectedTypeErrorc CsTt|tr|g}t|_t|tdjd |t |t |d|jt |ddS)Nz%Expected type {e}, but got: {v} ({t})/)ertr ) isinstancestrr r r rrrrrrtype)rZbad_typeexpectedrrrrUs  zExpectedTypeError.__init__N)rrrZmax_to_print_of_valuerrrrrr-Rsr-) __future__rr Zwasabirrrrrr!rr%r'r,r-rrrrs