goscript 0.0.45 → 0.0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -243,73 +243,149 @@ $.registerInterfaceType('FileInfo', null, // Zero value for interface is null
243
243
  returns: [{ type: { kind: $.TypeKind.Interface, methods: [] } }],
244
244
  },
245
245
  ]);
246
+ export class FileMode {
247
+ _value;
248
+ constructor(_value) {
249
+ this._value = _value;
250
+ }
251
+ valueOf() {
252
+ return this._value;
253
+ }
254
+ toString() {
255
+ return fileModeString(this);
256
+ }
257
+ static from(value) {
258
+ return new FileMode(value);
259
+ }
260
+ // IsDir reports whether m describes a directory.
261
+ // That is, it tests for the ModeDir bit being set in m.
262
+ IsDir() {
263
+ return (this._value & ModeDir.valueOf()) != 0;
264
+ }
265
+ // IsRegular reports whether m describes a regular file.
266
+ // That is, it tests that no mode type bits are set.
267
+ IsRegular() {
268
+ return (this._value & ModeType.valueOf()) == 0;
269
+ }
270
+ // Perm returns the Unix permission bits in m (m & ModePerm).
271
+ Perm() {
272
+ return new FileMode(this._value & ModePerm.valueOf());
273
+ }
274
+ // String returns a textual representation of the file mode.
275
+ String() {
276
+ return fileModeString(this);
277
+ }
278
+ // Type returns type bits in m (m & ModeType).
279
+ Type() {
280
+ return new FileMode((this._value & ModeType.valueOf()) >>> 0);
281
+ }
282
+ }
246
283
  // The single letters are the abbreviations
247
284
  // used by the String method's formatting.
248
285
  // d: is a directory
249
- export let ModeDir = 2147483648;
286
+ export let ModeDir = new FileMode(2147483648); // 0x80000000
250
287
  // a: append-only
251
- export let ModeAppend = 0;
288
+ export let ModeAppend = new FileMode(1 << 30); // 0x40000000
252
289
  // l: exclusive use
253
- export let ModeExclusive = 0;
290
+ export let ModeExclusive = new FileMode(1 << 29); // 0x20000000
254
291
  // T: temporary file; Plan 9 only
255
- export let ModeTemporary = 0;
292
+ export let ModeTemporary = new FileMode(1 << 28); // 0x10000000
256
293
  // L: symbolic link
257
- export let ModeSymlink = 0;
294
+ export let ModeSymlink = new FileMode(1 << 27); // 0x08000000
258
295
  // D: device file
259
- export let ModeDevice = 0;
296
+ export let ModeDevice = new FileMode(1 << 26); // 0x04000000
260
297
  // p: named pipe (FIFO)
261
- export let ModeNamedPipe = 0;
298
+ export let ModeNamedPipe = new FileMode(1 << 25); // 0x02000000
262
299
  // S: Unix domain socket
263
- export let ModeSocket = 0;
300
+ export let ModeSocket = new FileMode(1 << 24); // 0x01000000
264
301
  // u: setuid
265
- export let ModeSetuid = 0;
302
+ export let ModeSetuid = new FileMode(1 << 23); // 0x00800000
266
303
  // g: setgid
267
- export let ModeSetgid = 0;
304
+ export let ModeSetgid = new FileMode(1 << 22); // 0x00400000
268
305
  // c: Unix character device, when ModeDevice is set
269
- export let ModeCharDevice = 0;
306
+ export let ModeCharDevice = new FileMode(1 << 21); // 0x00200000
270
307
  // t: sticky
271
- export let ModeSticky = 0;
308
+ export let ModeSticky = new FileMode(1 << 20); // 0x00100000
272
309
  // ?: non-regular file; nothing else is known about this file
273
- export let ModeIrregular = 0;
310
+ export let ModeIrregular = new FileMode(1 << 19); // 0x00080000
274
311
  // Mask for the type bits. For regular files, none will be set.
275
- export let ModeType = 2147483648 | 134217728 | 33554432 | 16777216 | 67108864 | 2097152 | 524288;
312
+ export let ModeType = new FileMode(2401763328);
276
313
  // Unix permission bits
277
- export let ModePerm = 0o777;
314
+ export let ModePerm = new FileMode(0o777);
278
315
  // FileMode methods
279
316
  export function fileModeString(mode) {
280
317
  const buf = [];
281
- // File type
282
- if (mode & ModeDir)
318
+ const w = mode.valueOf();
319
+ // File type - these are the main type indicators
320
+ if (w & ModeDir.valueOf())
283
321
  buf.push('d');
284
- else if (mode & ModeSymlink)
322
+ else if (w & ModeSymlink.valueOf())
285
323
  buf.push('L');
286
- else if (mode & ModeDevice)
287
- buf.push('D');
288
- else if (mode & ModeNamedPipe)
324
+ else if (w & ModeNamedPipe.valueOf())
289
325
  buf.push('p');
290
- else if (mode & ModeSocket)
326
+ else if (w & ModeSocket.valueOf())
291
327
  buf.push('S');
292
- else if (mode & ModeCharDevice)
293
- buf.push('c');
294
- else if (mode & ModeIrregular)
328
+ else if (w & ModeDevice.valueOf()) {
329
+ if (w & ModeCharDevice.valueOf())
330
+ buf.push('c');
331
+ else
332
+ buf.push('D');
333
+ }
334
+ else if (w & ModeIrregular.valueOf())
295
335
  buf.push('?');
296
336
  else
297
337
  buf.push('-');
298
338
  // Permission bits
299
- const perm = mode & ModePerm;
339
+ const perm = w & ModePerm.valueOf();
300
340
  buf.push(perm & 0o400 ? 'r' : '-');
301
341
  buf.push(perm & 0o200 ? 'w' : '-');
302
- buf.push(perm & 0o100 ? 'x' : '-');
342
+ // Execute/search for user
343
+ if (perm & 0o100) {
344
+ if (w & ModeSetuid.valueOf())
345
+ buf.push('s');
346
+ else
347
+ buf.push('x');
348
+ }
349
+ else {
350
+ if (w & ModeSetuid.valueOf())
351
+ buf.push('S');
352
+ else
353
+ buf.push('-');
354
+ }
303
355
  buf.push(perm & 0o040 ? 'r' : '-');
304
356
  buf.push(perm & 0o020 ? 'w' : '-');
305
- buf.push(perm & 0o010 ? 'x' : '-');
357
+ // Execute/search for group
358
+ if (perm & 0o010) {
359
+ if (w & ModeSetgid.valueOf())
360
+ buf.push('s');
361
+ else
362
+ buf.push('x');
363
+ }
364
+ else {
365
+ if (w & ModeSetgid.valueOf())
366
+ buf.push('S');
367
+ else
368
+ buf.push('-');
369
+ }
306
370
  buf.push(perm & 0o004 ? 'r' : '-');
307
371
  buf.push(perm & 0o002 ? 'w' : '-');
308
- buf.push(perm & 0o001 ? 'x' : '-');
372
+ // Execute/search for other
373
+ if (perm & 0o001) {
374
+ if (w & ModeSticky.valueOf())
375
+ buf.push('t');
376
+ else
377
+ buf.push('x');
378
+ }
379
+ else {
380
+ if (w & ModeSticky.valueOf())
381
+ buf.push('T');
382
+ else
383
+ buf.push('-');
384
+ }
309
385
  return buf.join('');
310
386
  }
311
387
  export function fileModeType(mode) {
312
- return mode & ModeType;
388
+ return new FileMode(mode.valueOf() & ModeType.valueOf());
313
389
  }
314
390
  export class PathError {
315
391
  get Op() {
@@ -1 +1 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../../gs/io/fs/fs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../../gs/io/fs/fs.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,10 @@ import * as time from "@goscript/time/index.js";
5
5
  import * as syscall from "@goscript/syscall/index.js";
6
6
  export type Time = time.Time;
7
7
  export type FileInfo = fs.FileInfo;
8
- export type FileMode = fs.FileMode;
8
+ export { FileMode } from "@goscript/io/fs/index.js";
9
9
  export type DirEntry = fs.DirEntry;
10
10
  export declare const Time: any;
11
11
  export declare const FileInfo: any;
12
- export declare const FileMode: any;
13
12
  export declare const DirEntry: any;
14
13
  export declare function Getpagesize(): number;
15
14
  export declare class File {
@@ -71,4 +70,3 @@ export declare let ModeIrregular: fs.FileMode;
71
70
  export declare let ModeType: fs.FileMode;
72
71
  export declare let ModePerm: fs.FileMode;
73
72
  export declare function SameFile(fi1: fs.FileInfo, fi2: fs.FileInfo): boolean;
74
- export {};
@@ -1,10 +1,11 @@
1
1
  import * as $ from "@goscript/builtin/index.js";
2
2
  import { ErrUnimplemented } from "./error.gs.js";
3
3
  import * as fs from "@goscript/io/fs/index.js";
4
+ export { FileMode } from "@goscript/io/fs/index.js";
4
5
  // Export runtime values for ES module compatibility
5
6
  export const Time = null;
6
7
  export const FileInfo = null;
7
- export const FileMode = null;
8
+ // FileMode is now a class, so we re-export it directly from fs
8
9
  export const DirEntry = null;
9
10
  // Getpagesize returns the underlying system's memory page size.
10
11
  export function Getpagesize() {
@@ -1 +1 @@
1
- {"version":3,"file":"types_js.gs.js","sourceRoot":"","sources":["../../../gs/os/types_js.gs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types_js.gs.js","sourceRoot":"","sources":["../../../gs/os/types_js.gs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAQ9C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,sDAAsD;AACtD,MAAM,CAAC,MAAM,IAAI,GAAG,IAAW,CAAC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAW,CAAC;AACpC,+DAA+D;AAC/D,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAW,CAAC;AAEpC,gEAAgE;AAChE,MAAM,UAAU,WAAW;IAC1B,yDAAyD;IACzD,uDAAuD;IACvD,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,yDAAyD;AACzD,MAAM,OAAO,IAAI;IAChB,IAAW,IAAI;QACd,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,IAAW,IAAI,CAAC,KAAkB;QACjC,QAAQ;IACT,CAAC;IAEM,OAAO,CAEb;IAED,YAAY,IAAoC;QAC/C,IAAI,CAAC,OAAO,GAAG;YACd,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;SACpB,CAAA;IACF,CAAC;IAEM,KAAK;QACX,OAAO,IAAI,IAAI,EAAE,CAAA;IAClB,CAAC;IAED,qEAAqE;IAC9D,OAAO,CAAC,CAAS;QACvB,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAChC,CAAC;IAEM,YAAY,CAAC,CAAS;QAC5B,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAChC,CAAC;IAEM,OAAO,CAAC,CAAS;QACvB,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAChC,CAAC;IAEM,OAAO,CAAC,CAAS,EAAE,IAAiB;QAC1C,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAC5C,CAAC;IAEM,IAAI;QACV,OAAO,EAAE,CAAA;IACV,CAAC;IAEM,IAAI,CAAC,CAAU;QACrB,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,MAAM,CAAC,CAAU,EAAE,GAAW;QACpC,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,QAAQ,CAAC,CAAY;QAC3B,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,CAAU;QACtB,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,OAAO,CAAC,CAAU,EAAE,GAAW;QACrC,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,OAAO,CAAC,CAAY;QAC1B,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,IAAI,CAAC,MAAc,EAAE,MAAc;QACzC,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,WAAW,CAAC,CAAS;QAC3B,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,IAAY;QACxB,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,WAAW,CAAC,CAAY;QAC9B,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,eAAe,CAAC,CAAY;QAClC,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,gBAAgB,CAAC,CAAY;QACnC,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,WAAW;QACjB,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAChC,CAAC;IAEM,KAAK;QACX,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,KAAK,CAAC,GAAW,EAAE,GAAW;QACpC,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,QAAQ,CAAC,IAAY;QAC3B,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,IAAI;QACV,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,KAAK;QACX,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,EAAE;QACR,OAAO,CAAC,CAAA;IACT,CAAC;IAEM,IAAI;QACV,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAChC,CAAC;IAED,mBAAmB;IACZ,UAAU,CAAC,EAAU;QAC3B,OAAO,gBAAgB,CAAA;IACxB,CAAC;IAEM,OAAO,CAAC,EAAU,EAAE,GAAc;QACxC,OAAO,GAAG,CAAA;IACX,CAAC;IAED,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,kBAAkB,CACvC,MAAM,EACN,IAAI,IAAI,EAAE,EACV;QACC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;QACvU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;QACpW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;KAC1M,EACD,IAAI,EACJ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAC1D,CAAC;;AAGH,kCAAkC;AAClC,MAAM,IAAI;IACT,gBAAe,CAAC;CAChB;AAKD,sBAAsB;AACtB,MAAM,CAAC,IAAI,OAAO,GAAgB,EAAE,CAAC,OAAO,CAAA;AAC5C,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,aAAa,GAAgB,EAAE,CAAC,aAAa,CAAA;AACxD,MAAM,CAAC,IAAI,aAAa,GAAgB,EAAE,CAAC,aAAa,CAAA;AACxD,MAAM,CAAC,IAAI,WAAW,GAAgB,EAAE,CAAC,WAAW,CAAA;AACpD,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,aAAa,GAAgB,EAAE,CAAC,aAAa,CAAA;AACxD,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,cAAc,GAAgB,EAAE,CAAC,cAAc,CAAA;AAC1D,MAAM,CAAC,IAAI,UAAU,GAAgB,EAAE,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,IAAI,aAAa,GAAgB,EAAE,CAAC,aAAa,CAAA;AAExD,MAAM,CAAC,IAAI,QAAQ,GAAgB,EAAE,CAAC,QAAQ,CAAA;AAC9C,MAAM,CAAC,IAAI,QAAQ,GAAgB,EAAE,CAAC,QAAQ,CAAA;AAE9C,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CAAC,GAAgB,EAAE,GAAgB;IAC1D,2EAA2E;IAC3E,OAAO,KAAK,CAAA;AACb,CAAC"}
@@ -38,7 +38,7 @@ class fileStat {
38
38
  this._fields = {
39
39
  name: $.varRef(init?.name ?? ""),
40
40
  size: $.varRef(init?.size ?? 0),
41
- mode: $.varRef(init?.mode ?? 0),
41
+ mode: $.varRef(init?.mode ?? new fs.FileMode(0)),
42
42
  modTime: $.varRef(init?.modTime?.clone() ?? time.Now()),
43
43
  sys: $.varRef(init?.sys?.clone() ?? new syscall.Stat_t())
44
44
  };
@@ -60,7 +60,7 @@ class fileStat {
60
60
  }
61
61
  IsDir() {
62
62
  const fileStat = this;
63
- return (fileStat.Mode() & fs.ModeDir) !== 0;
63
+ return (fileStat.Mode().valueOf() & fs.ModeDir.valueOf()) !== 0;
64
64
  }
65
65
  Size() {
66
66
  const fs = this;
@@ -1 +1 @@
1
- {"version":3,"file":"types_unix.gs.js","sourceRoot":"","sources":["../../../gs/os/types_unix.gs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types_unix.gs.js","sourceRoot":"","sources":["../../../gs/os/types_unix.gs.ts"],"names":[],"mappings":"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"}
@@ -23,14 +23,19 @@ export type Bytes = Uint8Array | Slice<number>
23
23
 
24
24
  // int converts a value to a Go int type, handling proper signed integer conversion
25
25
  // This ensures that values like 2147483648 (2^31) are properly handled according to Go semantics
26
- export function int(value: number): number {
26
+ export function int(value: number | { valueOf(): number | null }): number {
27
27
  // In Go, int is typically 64-bit on 64-bit systems, but for compatibility with JavaScript
28
28
  // we need to handle the conversion properly. The issue is that JavaScript's number type
29
29
  // can represent values larger than 32-bit signed integers, but when cast in certain contexts
30
30
  // they get interpreted as signed 32-bit integers.
31
-
31
+ //
32
32
  // For Go's int type on 64-bit systems, we should preserve the full value
33
33
  // since JavaScript numbers can safely represent integers up to Number.MAX_SAFE_INTEGER
34
+ //
35
+ // For this we use Math.trunc.
36
+ if (typeof value === 'object' && 'valueOf' in value) {
37
+ return Math.trunc(value.valueOf() ?? 0)
38
+ }
34
39
  return Math.trunc(value)
35
40
  }
36
41
 
package/gs/io/fs/fs.ts CHANGED
@@ -369,87 +369,156 @@ $.registerInterfaceType(
369
369
  ],
370
370
  )
371
371
 
372
- export type FileMode = number
372
+ export class FileMode {
373
+ constructor(private _value: number) {}
374
+
375
+ valueOf(): number {
376
+ return this._value
377
+ }
378
+
379
+ toString(): string {
380
+ return fileModeString(this)
381
+ }
382
+
383
+ static from(value: number): FileMode {
384
+ return new FileMode(value)
385
+ }
386
+
387
+ // IsDir reports whether m describes a directory.
388
+ // That is, it tests for the ModeDir bit being set in m.
389
+ IsDir(): boolean {
390
+ return (this._value & ModeDir.valueOf()) != 0
391
+ }
392
+
393
+ // IsRegular reports whether m describes a regular file.
394
+ // That is, it tests that no mode type bits are set.
395
+ IsRegular(): boolean {
396
+ return (this._value & ModeType.valueOf()) == 0
397
+ }
398
+
399
+ // Perm returns the Unix permission bits in m (m & ModePerm).
400
+ Perm(): FileMode {
401
+ return new FileMode(this._value & ModePerm.valueOf())
402
+ }
403
+
404
+ // String returns a textual representation of the file mode.
405
+ String(): string {
406
+ return fileModeString(this)
407
+ }
408
+
409
+ // Type returns type bits in m (m & ModeType).
410
+ Type(): FileMode {
411
+ return new FileMode((this._value & ModeType.valueOf()) >>> 0)
412
+ }
413
+ }
373
414
 
374
415
  // The single letters are the abbreviations
375
416
  // used by the String method's formatting.
376
417
  // d: is a directory
377
- export let ModeDir: FileMode = 2147483648
418
+ export let ModeDir: FileMode = new FileMode(2147483648) // 0x80000000
378
419
 
379
420
  // a: append-only
380
- export let ModeAppend: FileMode = 0
421
+ export let ModeAppend: FileMode = new FileMode(1 << 30) // 0x40000000
381
422
 
382
423
  // l: exclusive use
383
- export let ModeExclusive: FileMode = 0
424
+ export let ModeExclusive: FileMode = new FileMode(1 << 29) // 0x20000000
384
425
 
385
426
  // T: temporary file; Plan 9 only
386
- export let ModeTemporary: FileMode = 0
427
+ export let ModeTemporary: FileMode = new FileMode(1 << 28) // 0x10000000
387
428
 
388
429
  // L: symbolic link
389
- export let ModeSymlink: FileMode = 0
430
+ export let ModeSymlink: FileMode = new FileMode(1 << 27) // 0x08000000
390
431
 
391
432
  // D: device file
392
- export let ModeDevice: FileMode = 0
433
+ export let ModeDevice: FileMode = new FileMode(1 << 26) // 0x04000000
393
434
 
394
435
  // p: named pipe (FIFO)
395
- export let ModeNamedPipe: FileMode = 0
436
+ export let ModeNamedPipe: FileMode = new FileMode(1 << 25) // 0x02000000
396
437
 
397
438
  // S: Unix domain socket
398
- export let ModeSocket: FileMode = 0
439
+ export let ModeSocket: FileMode = new FileMode(1 << 24) // 0x01000000
399
440
 
400
441
  // u: setuid
401
- export let ModeSetuid: FileMode = 0
442
+ export let ModeSetuid: FileMode = new FileMode(1 << 23) // 0x00800000
402
443
 
403
444
  // g: setgid
404
- export let ModeSetgid: FileMode = 0
445
+ export let ModeSetgid: FileMode = new FileMode(1 << 22) // 0x00400000
405
446
 
406
447
  // c: Unix character device, when ModeDevice is set
407
- export let ModeCharDevice: FileMode = 0
448
+ export let ModeCharDevice: FileMode = new FileMode(1 << 21) // 0x00200000
408
449
 
409
450
  // t: sticky
410
- export let ModeSticky: FileMode = 0
451
+ export let ModeSticky: FileMode = new FileMode(1 << 20) // 0x00100000
411
452
 
412
453
  // ?: non-regular file; nothing else is known about this file
413
- export let ModeIrregular: FileMode = 0
454
+ export let ModeIrregular: FileMode = new FileMode(1 << 19) // 0x00080000
414
455
 
415
456
  // Mask for the type bits. For regular files, none will be set.
416
- export let ModeType: FileMode =
417
- 2147483648 | 134217728 | 33554432 | 16777216 | 67108864 | 2097152 | 524288
457
+ export let ModeType: FileMode = new FileMode(2401763328)
418
458
 
419
459
  // Unix permission bits
420
- export let ModePerm: FileMode = 0o777
460
+ export let ModePerm: FileMode = new FileMode(0o777)
421
461
 
422
462
  // FileMode methods
423
463
  export function fileModeString(mode: FileMode): string {
424
464
  const buf: string[] = []
425
-
426
- // File type
427
- if (mode & ModeDir) buf.push('d')
428
- else if (mode & ModeSymlink) buf.push('L')
429
- else if (mode & ModeDevice) buf.push('D')
430
- else if (mode & ModeNamedPipe) buf.push('p')
431
- else if (mode & ModeSocket) buf.push('S')
432
- else if (mode & ModeCharDevice) buf.push('c')
433
- else if (mode & ModeIrregular) buf.push('?')
465
+ const w = mode.valueOf()
466
+
467
+ // File type - these are the main type indicators
468
+ if (w & ModeDir.valueOf()) buf.push('d')
469
+ else if (w & ModeSymlink.valueOf()) buf.push('L')
470
+ else if (w & ModeNamedPipe.valueOf()) buf.push('p')
471
+ else if (w & ModeSocket.valueOf()) buf.push('S')
472
+ else if (w & ModeDevice.valueOf()) {
473
+ if (w & ModeCharDevice.valueOf()) buf.push('c')
474
+ else buf.push('D')
475
+ }
476
+ else if (w & ModeIrregular.valueOf()) buf.push('?')
434
477
  else buf.push('-')
435
478
 
436
479
  // Permission bits
437
- const perm = mode & ModePerm
480
+ const perm = w & ModePerm.valueOf()
438
481
  buf.push(perm & 0o400 ? 'r' : '-')
439
482
  buf.push(perm & 0o200 ? 'w' : '-')
440
- buf.push(perm & 0o100 ? 'x' : '-')
483
+
484
+ // Execute/search for user
485
+ if (perm & 0o100) {
486
+ if (w & ModeSetuid.valueOf()) buf.push('s')
487
+ else buf.push('x')
488
+ } else {
489
+ if (w & ModeSetuid.valueOf()) buf.push('S')
490
+ else buf.push('-')
491
+ }
492
+
441
493
  buf.push(perm & 0o040 ? 'r' : '-')
442
494
  buf.push(perm & 0o020 ? 'w' : '-')
443
- buf.push(perm & 0o010 ? 'x' : '-')
495
+
496
+ // Execute/search for group
497
+ if (perm & 0o010) {
498
+ if (w & ModeSetgid.valueOf()) buf.push('s')
499
+ else buf.push('x')
500
+ } else {
501
+ if (w & ModeSetgid.valueOf()) buf.push('S')
502
+ else buf.push('-')
503
+ }
504
+
444
505
  buf.push(perm & 0o004 ? 'r' : '-')
445
506
  buf.push(perm & 0o002 ? 'w' : '-')
446
- buf.push(perm & 0o001 ? 'x' : '-')
507
+
508
+ // Execute/search for other
509
+ if (perm & 0o001) {
510
+ if (w & ModeSticky.valueOf()) buf.push('t')
511
+ else buf.push('x')
512
+ } else {
513
+ if (w & ModeSticky.valueOf()) buf.push('T')
514
+ else buf.push('-')
515
+ }
447
516
 
448
517
  return buf.join('')
449
518
  }
450
519
 
451
520
  export function fileModeType(mode: FileMode): FileMode {
452
- return mode & ModeType
521
+ return new FileMode(mode.valueOf() & ModeType.valueOf())
453
522
  }
454
523
 
455
524
  export class PathError {