%PDF- %PDF-
Direktori : /lib64/python2.7/site-packages/zmq/ |
Current File : //lib64/python2.7/site-packages/zmq/decorators.pyc |
� +�{Wc @ s� d Z d Z d d l m Z d d l Z d d l m Z d e f d � � YZ d e f d � � YZ d e f d � � YZ d � Z d � Z d S( si Decorators for running functions with context/sockets. .. versionadded:: 15.3 Like using Contexts and Sockets as context managers, but with decorator syntax. Context and sockets are closed at the end of the function. For example:: from zmq.decorators import context, socket @context() @socket(zmq.PUSH) def work(ctx, push): ... t contextt socketi����( t wrapsN( t basestringt _Decoratorc B s5 e Z d Z d d � Z d � Z d � Z d � Z RS( s The mini decorator factoryc C s | | _ d S( N( t _target( t selft target( ( s4 /usr/lib64/python2.7/site-packages/zmq/decorators.pyt __init__# s c s7 � j � � � \ � � � � � � � f d � } | S( s� The main logic of decorator Here is how those arguments works:: @out_decorator(*dec_args, *dec_kwargs) def func(*wrap_args, **wrap_kwargs): ... And in the ``wrapper``, we simply create ``self.target`` instance via ``with``:: target = self.get_target(*args, **kwargs) with target(*dec_args, **dec_kwargs) as obj: ... c s+ t � � � � � � � f d � � } | S( Nc s� � j | | � } | � � � �p } � rC � | k rC | | � <n= � rs � | k rs t d j � j � � � � n | | f } � | | � SWd QXd S( Ns, {0}() got multiple values for argument '{1}'( t get_targett TypeErrort formatt __name__( t argst kwargsR t obj( t dec_argst dec_kwargst funct kw_nameR ( s4 /usr/lib64/python2.7/site-packages/zmq/decorators.pyt wrapper; s ( R ( R R ( R R R R ( R s4 /usr/lib64/python2.7/site-packages/zmq/decorators.pyt decorator: s '( t process_decorator_args( R R R R ( ( R R R R s4 /usr/lib64/python2.7/site-packages/zmq/decorators.pyt __call__&