MINI MINI MANI MO
ó
o‘P\c           @   s…   d  Z  d d l Z d d l m Z d d l m Z d d l m Z d e j f d „  ƒ  YZ d	 d
 d
 „  ƒ  YZ d d d „  ƒ  YZ	 d S(   sI   
Classes and algorithms for matching requested access to access vectors.
iÿÿÿÿNi   (   t   access(   t   objectmodel(   t   utilt   Matchc           B   s    e  Z d d  d „ Z d „  Z RS(   i    c         C   s(   | |  _  | |  _ t |  _ d  |  _ d  S(   N(   t	   interfacet   distt   Falset   info_dir_changet   Nonet   __hash__(   t   selfR   R   (    (    s7   /usr/lib64/python2.7/site-packages/sepolgen/matching.pyt   __init__    s    			c         C   sT   y5 |  j  |  j f } | j  | j f } | | | ƒ SWn t t f k
 rO t SXd  S(   N(   R   R   t   AttributeErrort	   TypeErrort   NotImplemented(   R
   t   othert   methodt   at   b(    (    s7   /usr/lib64/python2.7/site-packages/sepolgen/matching.pyt   _compare(   s    N(   t   __name__t
   __module__R   R   R   (    (    (    s7   /usr/lib64/python2.7/site-packages/sepolgen/matching.pyR      s   t	   MatchListc           B   sM   e  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 RS(   i–   c         C   s4   g  |  _  g  |  _ |  j |  _ t |  _ d  |  _ d  S(   N(   t   childrent   bastardst   DEFAULT_THRESHOLDt	   thresholdR   t   allow_info_dir_changeR   t   av(   R
   (    (    s7   /usr/lib64/python2.7/site-packages/sepolgen/matching.pyR   3   s
    			c         C   s8   t  |  j ƒ r |  j d St  |  j ƒ r4 |  j d Sd  S(   Ni    (   t   lenR   R   R   (   R
   (    (    s7   /usr/lib64/python2.7/site-packages/sepolgen/matching.pyt   best<