
                         ~    S r SSKJr  SSKJr  SSKJr  SSKrSSKJr  SSKr " S S\R                  5      r
 S
S	 jrg)z&Holds iterator for reading from stdin.    )absolute_import)division)unicode_literalsN)errorsc                   $    \ rS rSrSrS rS rSrg)StdinIterator   z*An iterator that returns lines from stdin.c                     U $ N )selfs    8lib/googlecloudsdk/command_lib/storage/stdin_iterator.py__iter__StdinIterator.__iter__   s    K    c                 x    [         R                  R                  5       nU(       d  [        eUR	                  5       $ r   )sysstdinreadlineStopIterationrstrip)r   lines     r   __next__StdinIterator.__next__!   s)    99D;;=r   r   N)__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes__r   r   r   r   r      s    2r   r   c                     U (       d$  U(       d  U(       d  [         R                  " S5      eU (       a  U(       a  [         R                  " S5      eU(       a
  [        5       $ U $ )zAHelps command decide between normal URL args and a StdinIterator.z8Must have URL arguments if not reading paths from stdin.z?Cannot have both read from stdin flag and normal URL arguments.)r   InvalidUrlErrorr   )normal_urls_argumentshould_read_paths_from_stdinallow_emptys      r   get_urls_iterabler&   (   sS     ">+

 
 B  :

 
 I  "?	r   )F)r   
__future__r   r   r   r   "googlecloudsdk.command_lib.storager   sixIteratorr   r&   r   r   r   <module>r+      s8    - &  ' 
 5 

CLL 
 EJr   