U j_ @sddlmZGdddeZeGdddeZeGdddeZeGdd d eZeGd d d eZeGd d d eZeGdddeZ GdddeZ GdddeZ dS))with_str_methodc@s eZdZdS) JMESPathErrorN__name__ __module__ __qualname__rrn/private/var/folders/7x/9m06vtgj4d74s67pt_sykc68zn6h0v/T/pip-target-6mxy7rqm/lib/python/jmespath/exceptions.pyrsrcs,eZdZdZeffdd ZddZZS) ParseErrorzInvalid jmespath expressioncs:tt||||||_||_||_||_d|_dSN) superr __init__ lex_position token_valueupper token_typemsg expression)selfrrrr __class__rr r 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)rrrrrrZ underlinerrr __str__szParseError.__str__)rrrZ_ERROR_MESSAGEr r __classcell__rrrr r s r c@seZdZddZddZdS)IncompleteExpressionErrorcCs ||_t||_d|_d|_dSr )rlenrrr)rrrrr set_expression!s z(IncompleteExpressionError.set_expressioncCs d|jdd}d|j|fS)Nrrrz;Invalid jmespath expression: Incomplete expression: "%s" %s)rrrrrr r's z!IncompleteExpressionError.__str__N)rrrrrrrrr rsrcs&eZdZdfdd ZddZZS) LexerErrorNcs0||_||_||_tt||||||_dSr )lexer_position lexer_valuemessager r r r)rr!r"r#rrrr r 1s zLexerError.__init__cCs d|jd}d|j|j|fS)Nrrz"Bad jmespath expression: %s: %s %s)r!r#rrrrr r;s zLexerError.__str__)N)rrrr rrrrrr r /s r c@s$eZdZddZddZddZdS) ArityErrorcCs||_||_||_d|_dSr )expected_arity actual_arity function_namer)rexpectedactualnamerrr r CszArityError.__init__cCs d|j|d|j|j|jfS)Nz-Expected %s %s for function %s(), received %sargumentr% _pluralizer'r&rrrr rIs zArityError.__str__cCs|dkr |S|dSdS)Nrsr)rwordcountrrr r-QszArityError._pluralizeN)rrrr rr-rrrr r$Asr$c@seZdZddZdS)VariadictArityErrorcCs d|j|d|j|j|jfS)Nz6Expected at least %s %s for function %s(), received %sr+r,r.rrr rZs zVariadictArityError.__str__N)rrrrrrrr r2Xsr2c@seZdZddZddZdS)JMESPathTypeErrorcCs||_||_||_||_dSr )r' current_value actual_typeexpected_types)rr'r4r5r6rrr r eszJMESPathTypeError.__init__cCsd|j|j|j|jfS)NzQIn function %s(), invalid type for value: %s, expected one of: %s, received: "%s")r'r4r6r5r.rrr rlszJMESPathTypeError.__str__N)rrrr rrrrr r3csr3cseZdZfddZZS)EmptyExpressionErrorcstt|ddS)Nz-Invalid JMESPath expression: cannot be empty.)r r7r r.rrr r ts zEmptyExpressionError.__init__)rrrr rrrrr r7ssr7c@s eZdZdS)UnknownFunctionErrorNrrrrr r8ysr8N) Zjmespath.compatr ValueErrorrr rr r$r2r3r7r8rrrr s