+
        `                        a  R t0 t ^ RIHt ^ RIt^RIHtHtHtHt Rt	] ^ k  ! R R]P                  ]P                  4      tR# )    )IterableN)mixins	policyrepqueryutilIoportconQueryc                      a  ] tR t^t o RtRtRtRtRtRt	]
V 3R lR l4       t]P                  V 3R lR l4       tV 3R lR	 ltV 3R
 ltRtV tR# )r   al  
Ioportcon context query.

Parameter:
policy          The policy to query.

Keyword Parameters/Class attributes:
ports           A 2-tuple of the port range to match. (Set both to
                the same value for a single port)
ports_subset    If true, the criteria will match if it is a subset
                of the ioportcon's range.
ports_overlap   If true, the criteria will match if it overlaps
                any of the ioportcon's range.
ports_superset  If true, the criteria will match if it is a superset
                of the ioportcon's range.
ports_proper    If true, use proper superset/subset operations.
                No effect if not using set operations.

user            The criteria to match the context's user.
user_regex      If true, regular expression matching
                will be used on the user.

role            The criteria to match the context's role.
role_regex      If true, regular expression matching
                will be used on the role.

type_           The criteria to match the context's type.
type_regex      If true, regular expression matching
                will be used on the type.

range_          The criteria to match the context's range.
range_subset    If true, the criteria will match if it is a subset
                of the context's range.
range_overlap   If true, the criteria will match if it overlaps
                any of the context's range.
range_superset  If true, the criteria will match if it is a superset
                of the context's range.
range_proper    If true, use proper superset/subset operations.
                No effect if not using set operations.
NFc                B   < V ^8  d   QhRS[ P                  R,          /# )   returnN)r   IoportconRange)format__classdict__s   "=/usr/lib64/python3.14/site-packages/setools/ioportconquery.py__annotate__IoportconQuery.__annotate__?   s      y//$6     c                    V P                   # N_ports)selfs   &r   portsIoportconQuery.ports>   s    {{r   c                H   < V ^8  d   QhRS[ S[S[3,          R,          RR/# )r   valueNr   )tupleint)r   r   s   "r   r   r   C   s(      5c?T1 d r   c                Z    V'       d   \         P                  ! V!  V n        R # R V n        R # r   )r   r   r   )r   r   s   &&r   r   r   B   s    #22E:DKDKr   c                D   < V ^8  d   QhRS[ S[P                  ,          /# )r   r   )r   r   	Ioportcon)r   r   s   "r   r   r   I   s      )"5"56 r   c              #    "   V P                   P                  RV P                   24       V P                   P                  RV P                  : RV P
                  : RV P                  : RV P                  : RV P                  : 2
4       V P                  V P                   4       V P                  P                  4        F  pV P                  '       d`   \        P                  ! VP                  V P                  V P                  V P
                  V P                  V P                  4      '       g   Kt  V P                  VP                  4      '       g   K  Vx  K  	  R# 5i)z/Generator which yields all matching ioportcons.zGenerating results from zself.ports=z, self.ports_overlap=z, self.ports_subset=z, self.ports_superset=z, self.ports_proper=N)loginfopolicydebugr   ports_overlapports_subsetports_supersetports_proper_match_context_debug
ioportconsr   match_range_match_contextcontext)r   	ioportcons   & r   resultsIoportconQuery.resultsI   s    0>?+$**&<););(==R@Q@Q?S T/--//D$2C2C1EG 	H!!$((+//1Izzz$"2"2OOJJ%%&&''%%#' #' &&y'8'899O 2s   D0E"3"E"E"c                x   < V ^8  d   Qh/ S[ P                  R,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   Nr   r(   r'   r)   r*   )r   r   bool)r   r   s   "r   r   r      s[     V $$t+2W X Y Z [ \  ] ^ _ r   r   )__name__
__module____qualname____firstlineno____doc__r   r(   r'   r)   r*   propertyr   setterr1   __annotate_func____static_attributes____classdictcell__)r   s   @r   r   r      sb     'R /3FLM NL  \\  y  r   c                    V ^8  d   Qh/ ^ \         9   d,   \        P                  \        \        R3,          ,          ;R&   # )r   .__all__)__conditional_annotations__typingFinalr   str)r   s   "r   r   r      s+     $ $
 = <eCHo	& < %r   )r   )rA   collections.abcr   rB    r   r   r   r   r@   MatchContextPolicyQueryr   r   )rA   s   @r   <module>rI      s;   
 % $  , ,)< <QV((%*;*; Qr   