File: //lib/python3/dist-packages/awscli/customizations/__pycache__/toplevelbool.cpython-310.pyc
o
.&�a � @ s� d Z ddlZddlmZ ddlmZ ddlmZ ddlm Z e�
e�Ze
� Zdd� Zd d
� Zdd� Zd
d� ZG dd� dej�ZG dd� dej�ZdS )au
Top Level Boolean Parameters
----------------------------
This customization will take a parameter that has
a structure of a single boolean element and allow the argument
to be specified without a value.
Instead of having to say::
--ebs-optimized '{"Value": true}'
--ebs-optimized '{"Value": false}'
You can instead say `--ebs-optimized/--no-ebs-optimized`.
� N)�partial)�detect_shape_structure)� arguments)�#validate_mutually_exclusive_handlerc C s | � dtt| d�� d S )Nzbuilding-argument-table.ec2.*��
event_handler)�registerr �pull_up_boolr � r
�D/usr/lib/python3/dist-packages/awscli/customizations/toplevelbool.py�register_bool_params# s
��r c C sP t | �dkr&| j}t|�dkr&t|�� �d dkr&t|�� �d jdkr&dS dS )Nzstructure(scalar)� r �Value�booleanTF)r �members�len�list�keys�values� type_name)� arg_modelr r
r
r �_qualifies_for_simplification) s r c
K s� g }|� dtt|d�� t| �� �D ]G\}}t|d�rY|j}t|�rYt|j ||j
|j|j |jd�}|| |j <