OwlCyberSecurity - MANAGER
Edit File: base.cpython-39.pyc
a ���e� � @ sp d dl Z d dlmZmZmZ d dlmZ d dlmZ G dd� de�Z G dd� de �Z d d � Zdd� Zd d� Z dS )� N)�BytesIO�StringIO�UnsupportedOperation)�FileProxyMixin)�cached_propertyc @ s� e Zd ZdZddd�Zdd� Zdd� Zd d � Zdd� Ze d d� �Z ddd�Zddd�Zdd� Z dd� Zdd� Zd dd�Zdd� ZdS )!�Filei Nc C s6 || _ |d u rt|dd �}|| _t|d�r2|j| _d S )N�name�mode)�file�getattrr �hasattrr )�selfr r � r �W/home/gouroczh/virtualenv/pat/3.9/lib/python3.9/site-packages/django/core/files/base.py�__init__ s z File.__init__c C s | j pdS )N� �r �r r r r �__str__ s zFile.__str__c C s d| j j| pdf S )Nz<%s: %s>�None)� __class__�__name__r r r r �__repr__ s z File.__repr__c C s t | j�S �N)�boolr r r r r �__bool__ s z File.__bool__c C s | j S r )�sizer r r r �__len__ s zFile.__len__c C s� t | jd�r| jjS t | jd�rJztj�| jj�W S ttfyH Y n0 t | jd�r�t | jd�r�| j� � }| j� dtj� | j� � }| j� |� |S td��d S )Nr r �tell�seekr z$Unable to determine the file's size.) r r r �os�path�getsizer �OSError� TypeErrorr r �SEEK_END�AttributeError)r �posr r r r r s z File.sizec c sL |p| j }z| �d� W n ttfy. Y n0 | �|�}|s@qH|V q0dS )z{ Read the file and yield chunks of ``chunk_size`` bytes (defaults to ``File.DEFAULT_CHUNK_SIZE``). r N)�DEFAULT_CHUNK_SIZEr r&