;ò
î+ß?c           @   sŒ   d  k  l Z l Z l Z d k l Z l Z l Z d k l	 Z	 d „  Z
 d d „ Z d „  Z e e
 ƒ Z
 e
 i d „  e ƒ e e
 ƒ Z d S(	   (   s   Ghosts   PredicateGhosts	   Scheduler(   s   Paths   Requests   Presentation(   s   is_pathc         C   s   |  i |  ƒ Sd S(   sd   dispatch(affection)

    Apply an affection to its target; assumes that the target is callable.
    N(   s   as   target(   s   a(    (    s=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   dispatch   s     iÿÿÿÿc         C   s[   |  i } x, t | ƒ o | o | i } | d 8} q Wt d |  i d | d |  i ƒ Sd S(   s§   resolve(request, levels=N)

    Resolves a path, presents the ultimate head, unless N is given,
    in which case at most N levels of dereferencing are performed.
    i   s   actors   objects   targetN(	   s   requests   items   values   is_paths   levelss   heads   Presentations   targets   actor(   s   requests   levelss   value(    (    s=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   resolve   s     	 	c            s,   ˆ  i } t d ‡  d †  d | d t ƒ Sd  S(   Ns   actorc            s   |  i ˆ  ƒ S(   N(   s   ps   objects   aff(   s   p(   s   aff(    s=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   <lambda>   s    s   items   target(   s   affs   targets   Requests   resolve(   s   affs   target(    (   s   affs=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   send   s    	c         C   s   t  |  i ƒ S(   N(   s   is_paths   as   target(   s   a(    (    s=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   <lambda>   s    N(   s
   dp2.ghostss   Ghosts   PredicateGhosts	   Schedulers   dp2.corporas   Paths   Requests   Presentations   dp2.predicatess   is_paths   dispatchs   resolves   sends   delegates   schedule(   s   Ghosts   resolves   schedules   PredicateGhosts   sends   Requests   dispatchs   is_paths	   Schedulers   Paths   Presentation(    (    s=   /usr/home/rozzin/html/pedagogy/race-condition/dp2/dispatch.pys   ?   s   		