DdFddlZddlmZejr ddlZddlmZeZ ejdddZ ejdde dejdfd Z dde dejdfd Z dd Zdd Zdd eje deje fdZy)N)local)ContextsilentreturnrcyNrs //usr/lib/python3/dist-packages/click/globals.pyget_current_contextr cyr r r s r r r rrc tjdtjdS#tt f$r}|s t d|Yd}~yd}~wwxYw)aReturns the current click context. This can be used as a way to access the current context object from anywhere. This is a more implicit alternative to the :func:`pass_context` decorator. This function is primarily useful for helpers such as :func:`echo` which might be interested in changing its behavior based on the current context. To push the current context, :meth:`Context.scope` can be used. .. versionadded:: 5.0 :param silent: if set to `True` the return value is `None` if no context is available. The default behavior is to raise a :exc:`RuntimeError`. rz!There is no active click context.N)tcast_localstackAttributeError IndexError RuntimeError)res r r r sTKvvib!122 J 'KBC J  Ks&)AA  Acbtjjdgj|y)z*Pushes a new context to the current stack.rN)r__dict__ setdefaultappend)ctxs r push_contextr -s! OOw+2237rc@tjjy)z%Removes the top level from the stack.N)rrpopr rr pop_contextr#2s LLrcolorc@||Std}| |jSy)zInternal helper to get the default value of the color flag. If a value is passed it's returned unchanged, otherwise it's looked up from the current context. NTr )r r$)r$rs r resolve_color_defaultr&7s+   T *C yy r)F)rzte.Literal[False]rr).)rrrN)rNr )typingr threadingr TYPE_CHECKINGtyping_extensionstecorerroverloadr boolOptionalr r#r&r rr r0s??"  qzz)/D I1F08  D!1 QZZ=M r