]0@s;ddlZddlZddlZGdddZdS)Nc@seZdZddddddddddddd d iZd d d d ZddZddZd ddZd ddZd ddZ ddZ ddZ ddZ d S)TextFilestrip_comments skip_blanks lstrip_wsr rstrip_ws join_lines collapse_joinerrorsstrictNcKs|dkr$|dkr$tdxQ|jjD]@}||kr]t||||q4t|||j|q4Wx3|jD]%}||jkrtd|qW|dkr|j|n||_||_d|_g|_ dS)Nz7you must supply either or both of 'filename' and 'file'zinvalid TextFile option '%s'r) RuntimeErrordefault_optionskeyssetattrKeyErroropenfilenamefile current_linelinebuf)selfrroptionsoptr./opt/alt/python35/lib64/python3.5/text_file.py__init__Ns      zTextFile.__init__cCs7||_tj|jdd|j|_d|_dS)Nrr r)riorr rr)rrrrrros !z TextFile.opencCs2|j}d|_d|_d|_|jdS)N)rrrclose)rrrrrrvs     zTextFile.closecCsg}|dkr|j}|j|jdt|ttfr^|jdt|n|jd||jt|dj|S)Nz, z lines %d-%d: z line %d: )rappendr isinstancelisttuplestrjoin)rmsglineZoutmsgrrr gen_errors  zTextFile.gen_errorcCs td|j||dS)Nzerror: ) ValueErrorr()rr&r'rrrerrorszTextFile.errorcCs(tjjd|j||ddS)Nz warning:  )sysstderrwriter()rr&r'rrrwarnsz TextFile.warncCs|jr$|jd }|jd =|Sd}xu|jj}|dkrNd}|jr|r|jd}|d kr{nz|dks||ddkr|ddkrdpd}|d||}|jdkrq-n|jdd}|jr|r|dkr!|jd|S|j r6|j }||}t |j t rm|j dd|j drrrrr s ; !    x r)r,osrrrrrrs$