+
    ,i
  c                   s    ^ RI Ht ^RIHtHtHtHt ^RIHt  ! R R]P                  ]P                  ]P                  4      tR# )i    )Iterable)mixins	policyrepqueryutil)CriteriaSetDescriptorc                   s   a  ] tR t^t o Rt]]P                  ,          ! RR4      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# )	TypeQuerya  
Query SELinux policy types.

Parameter:
policy              The policy to query.

Keyword Parameters/Class attributes:
name                The type name to match.
name_regex          If true, regular expression matching
                    will be used on the type names.
alias               The alias name to match.
alias_regex         If true, regular expression matching
                    will be used on the alias names.
attrs               The attribute to match.
attrs_equal         If true, only types with attribute sets
                    that are equal to the criteria will
                    match.  Otherwise, any intersection
                    will match.
attrs_regex         If true, regular expression matching
                    will be used on the attribute names instead
                    of set logic.
permissive          The permissive state to match.  If this
                    is None, the state is not matched.
attrs_regexZlookup_typeattrFNc                s.   < V ^8  d   QhRS[ R,          /#    returnNboolZformat__classdict__   "8/usr/lib64/python3.14/site-packages/setools/typequery.py__annotate__TypeQuery.__annotate__,   s        D4K      c                s    V P                   # N_permissive)selfs   &r   
permissiveTypeQuery.permissive+   s    r   c                s   < V ^8  d   QhRR/# r    r   r   r   r   r   0   s     + +4 +r   c                s@    Vf
   R V n         R # \        V4      V n         R # r   )r   r   )r   Zvalues   &&r   r   r   /   s    =#D#E{Dr   c                sD   < V ^8  d   QhRS[ S[P                  ,          /# )r	   r
   )r    r   ZTyper   r   r   r   r   6   s      )..1 r   c              #  sz  "   V P                   P                  RV P                   24       V P                  V P                   4       V P	                  V P                   4       V P                   P                  RV P                  : RV P                  : RV P                  : 24       V P                   P                  RV P                  : 24       V P                  P                  4        F  pV P                  V4      '       g   K  V P                  V4      '       g   K5  V P                  '       dW   \        P                  ! \        VP!                  4       4      V P                  V P                  V P                  4      '       g   K  V P                  e   VP"                  V P                  8w  d   K  Vx  K  	  R# 5i)z*Generator which yields all matching types.zGenerating type results from zself.attrs=z, self.attrs_regex=z, self.attrs_equal=zself.permissive=N)ZlogZinfoZpolicyZ_match_name_debugZ_match_alias_debugZdebugattrsr   attrs_equalr   ZtypesZ_match_nameZ_match_aliasr   Zmatch_regex_or_setZsetZ
attributesZispermissive)r   Zts   & r   resultsZTypeQuery.results6   s@    5dkk]CDtxx()+$**&:)9)9(;;Od>N>N=PQR*$//+,-""$A##A&&$$Q''zzz$"9"9'JJ$$$$	#& #&
 *q~~/PG# %s   DF;F;0BF;c                sL   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[ R,          ;R&   # )r	   r   r   Nr   r   r   r   r   r   r      s0     8 9 : ; < #= r   r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r   r   ZTypeAttributer   r   r   r   Zpropertyr   Zsetterr   Z__annotate_func__Z__static_attributes__Z__classdictcell__)r   s   @r   r   r      sq     2 ")"9"9:=J[\EKK#K    + + W  r   r   N)Zcollections.abcr    Z r   r   r   r   Zdescriptorsr   Z
MatchAliasZ	MatchNameZPolicyQueryr   r   r   r   <module>r      s7   
 % , , .D!!6#3#3U5F5F Dr   