-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuos.py
319 lines (231 loc) · 8.13 KB
/
uos.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
"""
Module: 'uos' on esp32 1.11.0
"""
# MCU: (sysname='esp32', nodename='esp32', release='1.11.0', version='v1.11-580-g973f68780 on 2019-11-17', machine='ESP32 module with ESP32')
# Stubber: 1.3.2
class VfsFat:
"""
Create a filesystem object that uses the FAT filesystem format. Storage of the FAT filesystem is provided by block_dev. Objects created by this constructor can be mounted using mount().
"""
def chdir(self):
pass
def getcwd(self) -> str:
pass
def ilistdir(self):
pass
def mkdir(self):
pass
def mkfs(self):
pass
def mount(self):
pass
def open(self):
pass
def remove(self):
pass
def rename(self):
pass
def rmdir(self):
pass
def stat(self):
pass
def statvfs(self):
pass
def umount(self):
pass
class VfsLfs2:
"""
Create a filesystem object that uses the littlefs v2 filesystem format. Storage of the littlefs filesystem is provided by block_dev, which must support the extended interface. Objects created by this constructor can be mounted using mount().
"""
def chdir(self):
pass
def getcwd(self) -> str:
pass
def ilistdir(self):
pass
def mkdir(self):
pass
def mkfs(self):
pass
def mount(self):
pass
def open(self):
pass
def remove(self):
pass
def rename(self):
pass
def rmdir(self):
pass
def stat(self):
pass
def statvfs(self):
pass
def umount(self):
pass
def chdir(path):
"""
Change current directory.
Parameters
----------
- path :
http://docs.micropython.org/en/latest/library/uos.html#uos.chdir
"""
pass
def dupterm(stream_object, index=0):
"""
Duplicate or switch the MicroPython terminal (the REPL) on the given stream-like object. The stream_object argument must be a native stream object, or derive from uio.IOBase and implement the readinto() and write() methods. The stream should be in non-blocking mode and readinto() should return None if there is no data available for reading.
Parameters
----------
- stream_object
- index=0
After calling this function all terminal output is repeated on this stream, and any input that is available on the stream is passed on to the terminal input.
The index parameter should be a non-negative integer and specifies which duplication slot is set. A given port may implement more than one slot (slot 0 will always be available) and in that case terminal input and output is duplicated on all the slots that are set.
If None is passed as the stream_object then duplication is cancelled on the slot given by index.
The function returns the previous stream-like object in the given slot.
http://docs.micropython.org/en/latest/library/uos.html#uos.dupterm
"""
pass
def dupterm_notify(param):
"""
unknown
"""
pass
def getcwd() -> str:
"""
Get the current directory.
http://docs.micropython.org/en/latest/library/uos.html#uos.getcwd
"""
pass
def ilistdir(dir):
"""
This function returns an iterator which then yields tuples corresponding to the entries in the directory that it is listing. With no argument it lists the current directory, otherwise it lists the directory given by dir.
Parameters
----------
- [dir] :
The tuples have the form (name, type, inode[, size]):
'name' is a string (or bytes if dir is a bytes object) and is the name of the entry;
'type' is an integer that specifies the type of the entry, with 0x4000 for directories and 0x8000 for regular files;
'inode' is an integer corresponding to the inode of the file, and may be 0 for filesystems that don’t have such a notion.
Some platforms may return a 4-tuple that includes the entry’s size. For file entries, size is an integer representing the size of the file or -1 if unknown. Its meaning is currently undefined for directory entries.
"""
pass
def listdir(dir):
"""
With no argument, list the current directory. Otherwise list the given directory.
Parameters
----------
- [dir] :
http://docs.micropython.org/en/latest/library/uos.html#uos.listdir
"""
pass
def mkdir(path):
"""
Create a new directory.
Parameters
----------
- path
http://docs.micropython.org/en/latest/library/uos.html#uos.mkdir
"""
pass
def mount(fsobj, mount_point, *, readonly):
"""
Mount the filesystem object fsobj at the location in the VFS given by the mount_point string. fsobj can be a a VFS object that has a mount() method, or a block device. If it’s a block device then the filesystem type is automatically detected (an exception is raised if no filesystem was recognised). mount_point may be '/' to mount fsobj at the root, or '/<name>' to mount it at a subdirectory under the root.
Parameters
----------
- fsobj
- mount_point
- readonly
If readonly is True then the filesystem is mounted read-only.
During the mount process the method mount() is called on the filesystem object.
Will raise OSError(EPERM) if mount_point is already mounted.
http://docs.micropython.org/en/latest/library/uos.html#uos.mount
"""
pass
def remove(path):
"""
Remove a file.
Parameters
----------
- path
http://docs.micropython.org/en/latest/library/uos.html#uos.remove
"""
pass
def rename(old_path, new_path):
"""
Rename a file.
Parameters
----------
- old_path
- new_path
http://docs.micropython.org/en/latest/library/uos.html#uos.rename
"""
pass
def rmdir(path):
"""
Remove a directory.
Parameters
----------
- path
http://docs.micropython.org/en/latest/library/uos.html#uos.rmdir
"""
pass
def stat(path):
"""
Get the status of a file or directory.
Parameters
----------
- path
http://docs.micropython.org/en/latest/library/uos.html#uos.stat
"""
pass
def statvfs(path) -> tuple:
"""
Get the status of a fileystem.
Parameters
----------
- path
Returns a tuple with the filesystem information in the following order:
- f_bsize – file system block size
- f_frsize – fragment size
- f_blocks – size of fs in f_frsize units
- f_bfree – number of free blocks
- f_bavail – number of free blocks for unprivileged users
- f_files – number of inodes
- f_ffree – number of free inodes
- f_favail – number of free inodes for unprivileged users
- f_flag – mount flags
- f_namemax – maximum filename length
Parameters related to inodes: f_files, f_ffree, f_avail and the f_flags parameter may return 0 as they can be unavailable in a port-specific implementation.
http://docs.micropython.org/en/latest/library/uos.html#uos.statvfs
"""
pass
def umount(mount_point):
"""
Unmount a filesystem. mount_point can be a string naming the mount location, or a previously-mounted filesystem object. During the unmount process the method umount() is called on the filesystem object.
Parameters
----------
- mount_point
Will raise OSError(EINVAL) if mount_point is not found.
http://docs.micropython.org/en/latest/library/uos.html#uos.umount
"""
pass
def uname() -> tuple:
"""
Return a tuple (possibly a named tuple) containing information about the underlying machine and/or its operating system. The tuple has five fields in the following order, each of them being a string:
- sysname – the name of the underlying system
- nodename – the network name (can be the same as sysname)
- release – the version of the underlying system
- version – the MicroPython version and build date
- machine – an identifier for the underlying hardware (eg board, CPU)
"""
pass
def urandom(n):
"""
Return a bytes object with n random bytes. Whenever possible, it is generated by the hardware random number generator.
Parameters
----------
- n
http://docs.micropython.org/en/latest/library/uos.html#uos.urandom
"""
pass