B ㊇c ã@s¸ddlmZGdd„deƒZeGdd„deƒƒZeGdd„deƒƒZeGdd „d eƒƒZeGd d „d eƒƒZeGd d „d eƒƒZeGdd„deƒƒZ Gdd„deƒZ Gdd„deƒZ dS)é)Úwith_str_methodc@s eZdZdS)Ú JMESPathErrorN)Ú__name__Ú __module__Ú __qualname__©rrún/private/var/folders/8c/hx9_v10d5x38qmnzt13b7b8j1k3n5b/T/pip-target-x6xd5gna/lib/python/jmespath/exceptions.pyrsrcs,eZdZdZef‡fdd„ Zdd„Z‡ZS)Ú ParseErrorzInvalid jmespath expressioncs:tt|ƒ |||¡||_||_| ¡|_||_d|_dS)N) Úsuperr Ú__init__Ú lex_positionÚ token_valueÚupperÚ token_typeÚmsgÚ expression)Úselfr r rr)Ú __class__rrr s  zParseError.__init__cCs0d|jdd}d|j|j|j|j|j|fS)Nú éú^zF%s: Parse error at column %s, token "%s" (%s), for expression: "%s" %s)r rr rr)rÚ underlinerrrÚ__str__szParseError.__str__)rrrZ_ERROR_MESSAGEr rÚ __classcell__rr)rrr s r c@seZdZdd„Zdd„ZdS)ÚIncompleteExpressionErrorcCs ||_t|ƒ|_d|_d|_dS)N)rÚlenr rr )rrrrrÚset_expression!s z(IncompleteExpressionError.set_expressioncCs d|jdd}d|j|fS)Nrrrz;Invalid jmespath expression: Incomplete expression: "%s" %s)r r)rrrrrr'sz!IncompleteExpressionError.__str__N)rrrrrrrrrrsrcs&eZdZd‡fdd„ Zdd„Z‡ZS)Ú LexerErrorNcs0||_||_||_tt|ƒ |||¡||_dS)N)Úlexer_positionÚ lexer_valueÚmessager rr r)rrrr r)rrrr 1s zLexerError.__init__cCs d|jd}d|j|j|fS)Nrrz"Bad jmespath expression: %s: %s %s)rr r)rrrrrr;szLexerError.__str__)N)rrrr rrrr)rrr/s rc@s$eZdZdd„Zdd„Zdd„ZdS)Ú ArityErrorcCs||_||_||_d|_dS)N)Úexpected_arityÚ actual_arityÚ function_namer)rÚexpectedÚactualÚnamerrrr CszArityError.__init__cCs d|j| d|j¡|j|jfS)Nz-Expected %s %s for function %s(), received %sÚargument)r"Ú _pluralizer$r#)rrrrrIs  zArityError.__str__cCs|dkr |S|dSdS)NrÚsr)rÚwordÚcountrrrr)QszArityError._pluralizeN)rrrr rr)rrrrr!Asr!c@seZdZdd„ZdS)ÚVariadictArityErrorcCs d|j| d|j¡|j|jfS)Nz6Expected at least %s %s for function %s(), received %sr()r"r)r$r#)rrrrrZs  zVariadictArityError.__str__N)rrrrrrrrr-Xsr-c@seZdZdd„Zdd„ZdS)ÚJMESPathTypeErrorcCs||_||_||_||_dS)N)r$Ú current_valueÚ actual_typeÚexpected_types)rr$r/r0r1rrrr eszJMESPathTypeError.__init__cCsd|j|j|j|jfS)NzQIn function %s(), invalid type for value: %s, expected one of: %s, received: "%s")r$r/r1r0)rrrrrlszJMESPathTypeError.__str__N)rrrr rrrrrr.csr.cseZdZ‡fdd„Z‡ZS)ÚEmptyExpressionErrorcstt|ƒ d¡dS)Nz-Invalid JMESPath expression: cannot be empty.)r r2r )r)rrrr ts zEmptyExpressionError.__init__)rrrr rrr)rrr2ssr2c@s eZdZdS)ÚUnknownFunctionErrorN)rrrrrrrr3ysr3N) Zjmespath.compatrÚ ValueErrorrr rrr!r-r.r2r3rrrrÚs