@@ -103,51 +103,39 @@ FS.createPreloadedFile = FS_createPreloadedFile;
103
103
// to include that.
104
104
// Full JS API support
105
105
106
- cwd : ( ) => {
107
- return UTF8ToString ( __wasmfs_get_cwd ( ) ) ;
108
- } ,
109
- mkdir : ( path , mode ) => {
110
- return withStackSave ( ( ) => {
111
- mode = mode !== undefined ? mode : 511 /* 0777 */ ;
112
- var buffer = stringToUTF8OnStack ( path ) ;
113
- return __wasmfs_mkdir ( { { { to64 ( 'buffer' ) } } } , mode ) ;
114
- } ) ;
115
- } ,
106
+ cwd: ( ) => UTF8ToString ( __wasmfs_get_cwd ( ) ) ,
107
+ mkdir : ( path , mode ) => withStackSave ( ( ) => {
108
+ mode = mode !== undefined ? mode : 511 /* 0777 */ ;
109
+ var buffer = stringToUTF8OnStack ( path ) ;
110
+ return __wasmfs_mkdir ( { { { to64 ( 'buffer' ) } } } , mode ) ;
111
+ } ) ,
116
112
// TODO: mkdirTree
117
- rmdir : ( path ) = > {
118
- return FS . handleError ( withStackSave ( ( ) => __wasmfs_rmdir ( stringToUTF8OnStack ( path ) ) ) ) ;
119
- } ,
120
- open: ( path , flags , mode ) => {
113
+ rmdir : ( path ) => FS . handleError (
114
+ withStackSave ( ( ) => __wasmfs_rmdir ( stringToUTF8OnStack ( path ) ) )
115
+ ) ,
116
+ open : ( path , flags , mode ) => withStackSave ( ( ) => {
121
117
flags = typeof flags == 'string' ? FS_modeStringToFlags ( flags ) : flags ;
122
118
mode = typeof mode == 'undefined' ? 438 /* 0666 */ : mode ;
123
- return withStackSave ( ( ) => {
124
- var buffer = stringToUTF8OnStack ( path ) ;
125
- var fd = FS . handleError ( __wasmfs_open ( { { { to64 ( 'buffer' ) } } } , flags , mode ) ) ;
126
- return { fd : fd } ;
127
- } ) ;
128
- } ,
119
+ var buffer = stringToUTF8OnStack ( path ) ;
120
+ var fd = FS . handleError ( __wasmfs_open ( { { { to64 ( 'buffer' ) } } } , flags , mode ) ) ;
121
+ return { fd : fd } ;
122
+ } ) ,
129
123
create : ( path , mode ) => {
130
124
// Default settings copied from the legacy JS FS API.
131
125
mode = mode !== undefined ? mode : 438 /* 0666 */ ;
132
126
mode &= { { { cDefs . S_IALLUGO } } } ;
133
127
mode |= { { { cDefs . S_IFREG } } } ;
134
128
return FS . mknod ( path, mode, 0 ) ;
135
129
} ,
136
- close : ( stream ) => {
137
- return FS . handleError ( - __wasmfs_close ( stream . fd ) ) ;
138
- } ,
139
- unlink : ( path ) => {
140
- return withStackSave ( ( ) => {
141
- var buffer = stringToUTF8OnStack ( path ) ;
142
- return __wasmfs_unlink ( buffer ) ;
143
- } ) ;
144
- } ,
145
- chdir : ( path ) = > {
146
- return withStackSave ( ( ) => {
147
- var buffer = stringToUTF8OnStack ( path ) ;
148
- return __wasmfs_chdir ( buffer ) ;
149
- } ) ;
150
- } ,
130
+ close : ( stream ) => FS . handleError ( - __wasmfs_close ( stream . fd ) ) ,
131
+ unlink : ( path ) => withStackSave ( ( ) => {
132
+ var buffer = stringToUTF8OnStack ( path ) ;
133
+ return __wasmfs_unlink ( buffer ) ;
134
+ } ) ,
135
+ chdir : ( path ) => withStackSave ( ( ) => {
136
+ var buffer = stringToUTF8OnStack ( path ) ;
137
+ return __wasmfs_chdir ( buffer ) ;
138
+ } ) ,
151
139
// TODO: read
152
140
read : ( stream , buffer , offset , length , position ) => {
153
141
var seeking = typeof position != 'undefined' ;
@@ -193,33 +181,29 @@ FS.createPreloadedFile = FS_createPreloadedFile;
193
181
// TODO: mmap
194
182
// TODO: msync
195
183
// TODO: munmap
196
- writeFile : ( path , data ) = > {
197
- return withStackSave ( ( ) => {
198
- var pathBuffer = stringToUTF8OnStack ( path ) ;
199
- if ( typeof data == 'string' ) {
200
- var buf = new Uint8Array ( lengthBytesUTF8 ( data ) + 1 ) ;
201
- var actualNumBytes = stringToUTF8Array ( data , buf , 0 , buf . length ) ;
202
- data = buf . slice ( 0 , actualNumBytes ) ;
203
- }
204
- var dataBuffer = _malloc ( data . length ) ;
184
+ writeFile : ( path , data ) = > withStackSave ( ( ) => {
185
+ var pathBuffer = stringToUTF8OnStack ( path ) ;
186
+ if ( typeof data == 'string' ) {
187
+ var buf = new Uint8Array ( lengthBytesUTF8 ( data ) + 1 ) ;
188
+ var actualNumBytes = stringToUTF8Array ( data , buf , 0 , buf . length ) ;
189
+ data = buf . slice ( 0 , actualNumBytes ) ;
190
+ }
191
+ var dataBuffer = _malloc ( data . length ) ;
205
192
#if ASSERTIONS
206
- assert ( dataBuffer ) ;
193
+ assert ( dataBuffer ) ;
207
194
#endif
208
- for ( var i = 0 ; i < data . length ; i ++ ) {
209
- { { { makeSetValue ( 'dataBuffer' , 'i' , 'data[i]' , 'i8' ) } } } ;
210
- }
211
- var ret = __wasmfs_write_file ( pathBuffer , dataBuffer , data . length ) ;
212
- _free ( dataBuffer ) ;
213
- return ret ;
214
- } ) ;
215
- } ,
216
- symlink : ( target , linkpath ) = > {
217
- return withStackSave ( ( ) => {
218
- var targetBuffer = stringToUTF8OnStack ( target ) ;
219
- var linkpathBuffer = stringToUTF8OnStack ( linkpath ) ;
220
- return __wasmfs_symlink ( targetBuffer , linkpathBuffer ) ;
221
- } ) ;
222
- } ,
195
+ for ( var i = 0 ; i < data . length ; i ++ ) {
196
+ { { { makeSetValue ( 'dataBuffer' , 'i' , 'data[i]' , 'i8' ) } } } ;
197
+ }
198
+ var ret = __wasmfs_write_file ( pathBuffer , dataBuffer , data . length ) ;
199
+ _free ( dataBuffer ) ;
200
+ return ret ;
201
+ } ) ,
202
+ symlink : ( target , linkpath ) = > withStackSave ( ( ) => {
203
+ var targetBuffer = stringToUTF8OnStack ( target ) ;
204
+ var linkpathBuffer = stringToUTF8OnStack ( linkpath ) ;
205
+ return __wasmfs_symlink ( targetBuffer , linkpathBuffer ) ;
206
+ } ) ,
223
207
// TODO: readlink
224
208
statBufToObject : ( statBuf ) = > {
225
209
// i53/u53 are enough for times and ino in practice.
@@ -296,23 +280,21 @@ FS.createPreloadedFile = FS_createPreloadedFile;
296
280
isDevice : false , // TODO: wasmfs support for devices
297
281
} ;
298
282
} ,
299
- readdir : ( path ) => {
300
- return withStackSave ( ( ) => {
301
- var pathBuffer = stringToUTF8OnStack ( path ) ;
302
- var entries = [ ] ;
303
- var state = __wasmfs_readdir_start ( pathBuffer ) ;
304
- if ( ! state ) {
305
- // TODO: The old FS threw an ErrnoError here.
306
- throw new Error ( "No such directory" ) ;
307
- }
308
- var entry ;
309
- while ( entry = __wasmfs_readdir_get ( state ) ) {
310
- entries . push ( UTF8ToString ( entry ) ) ;
311
- }
312
- __wasmfs_readdir_finish ( state ) ;
313
- return entries ;
314
- } ) ;
315
- } ,
283
+ readdir : ( path ) => withStackSave ( ( ) => {
284
+ var pathBuffer = stringToUTF8OnStack ( path ) ;
285
+ var entries = [ ] ;
286
+ var state = __wasmfs_readdir_start ( pathBuffer ) ;
287
+ if ( ! state ) {
288
+ // TODO: The old FS threw an ErrnoError here.
289
+ throw new Error ( "No such directory" ) ;
290
+ }
291
+ var entry ;
292
+ while ( entry = __wasmfs_readdir_get ( state ) ) {
293
+ entries . push ( UTF8ToString ( entry ) ) ;
294
+ }
295
+ __wasmfs_readdir_finish ( state ) ;
296
+ return entries ;
297
+ } ) ,
316
298
// TODO: mount
317
299
// TODO: unmount
318
300
// TODO: lookup
0 commit comments