o
    5t¾iÌ  ã                   @   s4   d dl mZ d dlZddlmZ G dd„ deƒZdS )é    )ÚAnyNé   )ÚTextTableWriterc                       sÀ   e Zd ZdZdZedefdd„ƒZedefdd„ƒZ	ede
fdd	„ƒZejd
e
ddfdd	„ƒZdeddf‡ fdd„Zd‡ fdd„Zdee fdd„Zdee fdd„Zdee fdd„Z‡  ZS )ÚCsvTableWriterz¾
    A table writer class for character separated values format.
    The default separated character is a comma (``","``).

        :Example:
            :ref:`example-csv-table-writer`
    ÚcsvÚreturnc                 C   ó   | j S ©N)ÚFORMAT_NAME©Úself© r   úR/home/ubuntu/.local/lib/python3.10/site-packages/pytablewriter/writer/text/_csv.pyÚformat_name   ó   zCsvTableWriter.format_namec                 C   s   dS )NTr   r   r   r   r   Úsupport_split_write   s   z"CsvTableWriter.support_split_writec                 C   r   r	   )Ú_marginr   r   r   r   Úmargin   r   zCsvTableWriter.marginÚvalueNc                 C   s   d S r	   r   )r   r   r   r   r   r      s   Úkwargsc                    sZ   t ƒ jdi |¤Ž |  d¡ d| _| dd¡| _d| _d| _d| _d| _	d| j
tjj< d S )NÚ Úcolumn_delimiterú,r   Fr   )ÚsuperÚ__init__Ú
_set_charsÚindent_stringÚgetr   r   Ú
is_paddingÚis_formatting_floatÚis_write_header_separator_rowÚ_quoting_flagsÚtypepyÚTypecodeÚNULL_STRING)r   r   ©Ú	__class__r   r   r   $   s   
zCsvTableWriter.__init__c                    s   t  | j¡rd S tƒ  ¡  d S r	   )r"   Úis_empty_sequenceÚheadersr   Ú_write_headerr   r%   r   r   r)   2   s   zCsvTableWriter._write_headerc                 C   ó   g S r	   r   r   r   r   r   Ú_get_opening_row_items8   ó   z%CsvTableWriter._get_opening_row_itemsc                 C   r*   r	   r   r   r   r   r   Ú_get_value_row_separator_items;   r,   z-CsvTableWriter._get_value_row_separator_itemsc                 C   r*   r	   r   r   r   r   r   Ú_get_closing_row_items>   r,   z%CsvTableWriter._get_closing_row_items)r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   ÚpropertyÚstrr   Úboolr   Úintr   Úsetterr   r   r)   Úlistr+   r-   r.   Ú__classcell__r   r   r%   r   r      s     r   )Útypingr   r"   Ú_text_writerr   r   r   r   r   r   Ú<module>   s    