
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
^                 @   sH   d dl Z ddlmZmZ ddlmZ ddlmZ G dd deeeZdS )    N   )MatchContext	MatchName)PolicyQuery)match_regexc                   s(   e Zd ZdZ fddZdd Z  ZS )NetifconQueryaG  
    Network interface context query.

    Parameter:
    policy          The policy to query.

    Keyword Parameters/Class attributes:
    name            The name of the network interface to match.
    name_regex      If true, regular expression matching will
                    be used for matching the name.
    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.
    c                s$   t t| j|f| tjt| _d S )N)superr   __init__loggingZ	getLogger__name__log)selfpolicykwargs)	__class__ %/usr/lib64/python3.6/netifconquery.pyr	   :   s    zNetifconQuery.__init__c             c   sr   | j jdj|  | j| j  | j| j  xB| jj D ]4}| jrVt|j	| j| j
 rVq6| j|jsdq6|V  q6W dS )z.Generator which yields all matching netifcons.z+Generating netifcon results from {0.policy}N)r   infoformatZ_match_name_debugZ_match_context_debugr   Z	netifconsnamer   netifZ
name_regexZ_match_contextcontext)r   r   r   r   r   results>   s    
zNetifconQuery.results)r   
__module____qualname____doc__r	   r   __classcell__r   r   )r   r   r      s   r   )	r
   Zmixinsr   r   Zqueryr   utilr   r   r   r   r   r   <module>   s   