+
    €Ú,iT  c                   sŽ   € ^ RI HtHt ^ RIt^ RIt]P
                  '       d   ^ RIHt ^RIH	t	  ! R R]4      t
 ! R R]
4      tR# )	i    )ÚABCÚabstractmethodN)ÚDiGraph)ÚSELinuxPolicyc                   sR   a € ] tR t^t o RtV 3R lR lt]V 3R lR l4       tRtV t	R# )ÚPolicyQueryz4Abstract base class for all SELinux policy analyses.c                s"   <€ V ^8„  d   QhRRRR/# )é   Úpolicyr   ÚreturnN© ©ZformatÚ__classdict__ó   "€Ú4/usr/lib64/python3.14/site-packages/setools/query.pyÚ__annotate__ÚPolicyQuery.__annotate__   s   ø€ ÷ .ñ .˜ð .¸Tñ .ó    c                s  € Wn         \        P                  ! V P                  4      V n        \        VP                  4       R R7       FA  p\        WR4      p\        V4      '       d   \        RV R24      h\        WW#,          4       KC  	  R# )T)ZreverseNzKeyword parameter z conflicts with a callable.)r   ÚloggingZ	getLoggerÚ
__module__ÚlogZsortedZkeysZgetattrZcallableZ
ValueErrorZsetattr)Úselfr   ZkwargsZnameZattrs   &&,  r   Ú__init__ZPolicyQuery.__init__   sm   € Ø'-ŒÜ!(×!2Ò!2°4·?±?Ó!CˆŒô ˜6Ÿ;™;›=°$×7ˆDÜ˜4 tÓ,ˆDÜ˜~Š~Ü Ð#5°d°VÐ;VÐ!WÓXÐXäD ¥Ö-ó 8r   c                s4   <€ V ^8„  d   QhRS[ P                  /# )r   r   )ÚtypingZIterabler	   r   r   r   r   $   s   ø€ ÷ ñ ™Ÿ™ñ r   c                ó   € R# )ze
Generator which returns the matches for the query.  This method
should be overridden by subclasses.
Nr   ©r   ó   &r   ÚresultsZPolicyQuery.results#   ó   ‚ r   )r   r   N)
Ú__name__r   Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   Ú__static_attributes__Ú__classdictcell__©r
   ó   @r   r   r      s&   ø‡ € á>÷.ð .ð  ÷ó ör   r   c                   sL   a € ] tR t^+t o Rt]V 3R lR l4       tV 3R ltRtV t	R# )ÚDirectedGraphAnalysisz=Abstract base class for graph-basded SELinux policy analysis.c                s   <€ V ^8„  d   QhRR/# )r   r   r   r   r	   r   r   r   Ú"DirectedGraphAnalysis.__annotate__2   s   ø€ ÷ Oñ O 9ñ Or   c                r   )z@Return the results of the analysis as a NetworkX directed graph.Nr   r   r   r   Úgraphical_resultsZ'DirectedGraphAnalysis.graphical_results1   r   r   c                s$   <€ V ^8„  d   Qh/ R;R&   # )r   r   ZGr   r	   r   r   r   r$   +   s   ø‡ ‚ ð Lò	 r   r   N)
r   r   r   r   r   r   r%   Z__annotate_func__r   r    r!   r"   r   r#   r#   +   s%   ø‡ € áGð ÷Oó ðO÷ ƒ r   r#   )Zabcr    r   r   r   ZTYPE_CHECKINGZnetworkxr   Z	policyrepr   r   r#   r   r   r   Ú<module>r&      s<   ð÷ $Û Û à	××ÐÝ Ý(ô#ô ô8O˜Kö Or   