-í
çś<c       sL   d  Z  d k Z d d d d g Z h  a d   Z d   Z e Z d   Z d S(	   së   Read and cache directory listings.

The listdir() routine returns a sorted list of the files in a directory,
using a cache to avoid reading the directory more often than necessary.
The annotate() routine appends slashes to directories.Ns   listdirs   opendirs   annotates   resetc      s
   h  a  d S(   s   Reset the cache completely.N(   s   cache(    (    (    s   /usr/lib/python2.2/dircache.pys   reset s      c    sÚ   y t  |  \ } } t  |  =Wn% t j
 o d g  f \ } } n Xy t i |   d } Wn t i j
 o g  Sn X| | j o> y t i	 |   } Wn t i j
 o g  Sn X| i
   n | | f t  |  <| Sd S(   s%   List directory contents, using cache.i˙˙˙˙i   N(   s   caches   paths   cached_mtimes   lists   KeyErrors   oss   stats   mtimes   errors   listdirs   sort(   s   paths   mtimes   lists   cached_mtime(    (    s   /usr/lib/python2.2/dircache.pys   listdir s$     		c    s]   xV t  t |   D]B } t i i t i i |  | |   o | | d | | <n q Wd S(   s    Add '/' suffixes to directories.s   /N(	   s   ranges   lens   lists   is   oss   paths   isdirs   joins   head(   s   heads   lists   i(    (    s   /usr/lib/python2.2/dircache.pys   annotate( s
      &(   s   __doc__s   oss   __all__s   caches   resets   listdirs   opendirs   annotate(   s   resets   annotates   listdirs   __all__s   oss   opendir(    (    s   /usr/lib/python2.2/dircache.pys   ? s   			