
    Ef$                     b    d Z ddlZddlmZ ddlmZ  G d de          Z G d de          ZdS )z
    pyexcel_io.writers.csv_sheet
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    The lower level csv file format writer

    :copyright: (c) 2014-2022 by Onni Software Ltd.
    :license: New BSD License, see LICENSE for more details
    N)ISheetWriterc                   2    e Zd ZdZ	 	 	 d	dZd Zd Zd ZdS )
CSVFileWriterz
    csv file writer

    utf-8FNc                 T   || _         || _        | j        |rt          j        | _        || _        t          j        | _        || _        t          j        |v r$|	                    t          j                  | _        || _
        d | _        || _        |                                 | _        d S N)	_encoding_sheet_name	constantsDEFAULT_SHEET_NAME_single_sheet_in_bookDEFAULT_CSV_NEWLINE_CSVFileWriter__line_terminator	_keywordsKEYWORD_LINE_TERMINATORget_sheet_indexfile_handle_native_book
get_writerwriter)selffilenamenameencodingsingle_sheet_in_booksheet_indexkeywordss          ^/var/www/ffwdstore.be/apps/py-env/lib/python3.11/site-packages/pyexcel_io/writers/csv_sheet.py__init__zCSVFileWriter.__init__   s     "#';#(;D%9"!*!>!,88%-\\1& &D" ($oo''    c                 T   | j         t          j        k    rT| j                            d          }|d         t          j        | j         t          j        | j        d|d         }n| j        }t          |dd| j                  | _	        t          j        | j	        fi | j        S )N.r      w )newliner   )r
   r   r   r   splitDEFAULT_MULTI_CSV_SEPARATORr   openr	   r   csvr   r   )r   names	file_names      r   r   zCSVFileWriter.get_writer0   s    y;;;%++C00Ea55  55!!!aII )IsB
 
 
 z$*==dn===r!   c                 :    | j                             |           dS )z+
        write a row into the file
        N)r   writerow)r   arrays     r   	write_rowzCSVFileWriter.write_rowC   s      	U#####r!   c                 8    | j                                          d S r   )r   closer   s    r   r3   zCSVFileWriter.closeI   s         r!   )r   FN)__name__
__module____qualname____doc__r    r   r1   r3    r!   r   r   r      sj          "( ( ( (4> > >&$ $ $! ! ! ! !r!   r   c                       e Zd ZdZd Zd ZdS )CSVMemoryWriterzWrite csv to a memory streamc                     | j         | _        t          j        | j        fi | j        }| j        s*|                    t          j        | j	        dfz  g           |S Nr&   )
r   r   r+   r   r   r   r/   r   !DEFAULT_CSV_STREAM_FILE_FORMATTERr
   )r   r   s     r   r   zCSVMemoryWriter.get_writerP   sl    ,D,????) 	OO?',-   r!   c                 h    | j         rd S | j                            t          j        dz  g           d S r=   )r   r   r/   r   SEPARATOR_FORMATTERr4   s    r   r3   zCSVMemoryWriter.close\   s<    % 	G DK  )"?""D!EFFFFFr!   N)r5   r6   r7   r8   r   r3   r9   r!   r   r;   r;   M   s=        &&
 
 
G G G G Gr!   r;   )r8   r+   pyexcel_io.constantsr   pyexcel_io.plugin_apir   r   r;   r9   r!   r   <module>rC      s     


 ( ( ( ( ( ( . . . . . .:! :! :! :! :!L :! :! :!zG G G G Gm G G G G Gr!   