File: //usr/local/lib/python3.10/dist-packages/numpy/lib/__pycache__/npyio.cpython-310.pyc
o
���g$| � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlmZm Z
mZ d dlm
Z
d dlZddlmZ ddlmZ d dlmZ d dlmZmZ d d lmZ d d
lmZmZ ddlmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z) d dl*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0 g d
�Z1ej2ej3dd�Z3G dd� d�Z4dd� Z5G dd� de
�Z6ed� dTej7d�dd��Z8dUdd�Z9e3e9�dVdd��Z:d d!� Z;e3e;�d"d#� �Z<d$d%� Z=e3e=�d&d'� �Z>dWd(d)�Z?d*d+� Z@d,eAfd-d.�ZBd/ZCdXd1d2�ZDd3d4� ZEd/ZCd5d6d7d8dd ddddejFd9d:�d;d<�ZGeed�eHd6ddd ddd d9df
ddd=�d>d?���ZIe3� eI�ZJ dYd@dA�ZKe3eK� E dZdGdH��ZLed�d[dIdJ��ZMeed�eHd6dd d dddddddE�NeOe jP��dKdddLdddddd9fd ddM�dNdO���ZQe3� eQ�ZRdPdQ� ZSdRdS� ZTdS )\� N)�
itemgetter�index�methodcaller)�Mapping� )�format)�
DataSource)� overrides)�packbits�
unpackbits)�_load_from_filelike)�set_array_function_like_doc�
set_module)�LineSplitter�
NameValidator�StringConverter�ConverterError�ConverterLockError�ConversionWarning�_is_string_like�has_nested_fields�
flatten_dtype�
easy_dtype�_decode_line)�asbytes�asstr� asunicode� os_fspath�os_PathLike�pickle)
�savetxt�loadtxt�
genfromtxt�
recfromtxt�
recfromcsv�load�save�savez�savez_compressedr
r � fromregexr �numpy)�modulec @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �BagObjam
BagObj(obj)
Convert attribute look-ups to getitems on the object passed in.
Parameters
----------
obj : class instance
Object on which attribute look-up is performed.
Examples
--------
>>> from numpy.lib.npyio import BagObj as BO
>>> class BagDemo:
... def __getitem__(self, key): # An instance of BagObj(BagDemo)
... # will call this method when any
... # attribute look-up is required
... result = "Doesn't matter what you want, "
... return result + "you're gonna get this"
...
>>> demo_obj = BagDemo()
>>> bagobj = BO(demo_obj)
>>> bagobj.hello_there
"Doesn't matter what you want, you're gonna get this"
>>> bagobj.I_can_be_anything
"Doesn't matter what you want, you're gonna get this"
c C s t �|�| _d S �N)�weakref�proxy�_obj)�self�obj� r3 �:/usr/local/lib/python3.10/dist-packages/numpy/lib/npyio.py�__init__H s zBagObj.__init__c C s, z t �| d�| W S ty t|�d �w )Nr0 )�object�__getattribute__�KeyError�AttributeError�r1 �keyr3 r3 r4 r7 L s
�zBagObj.__getattribute__c C s t t�| d��� �S )z�
Enables dir(bagobj) to list the files in an NpzFile.
This also enables tab-completion in an interpreter or IPython.
r0 )�listr6 r7 �keys�r1 r3 r3 r4 �__dir__R s zBagObj.__dir__N)�__name__�
__module__�__qualname__�__doc__r5 r7 r? r3 r3 r3 r4 r, * s
r, c O s: t | d�s t| �} ddl}d|d<