instrumentality 0.0.10 → 0.0.12
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.
- package/dist/base.d.ts.map +1 -1
- package/dist/base.js +3 -1
- package/dist/road.d.ts +12 -0
- package/dist/road.d.ts.map +1 -1
- package/dist/road.js +55 -1
- package/package.json +1 -1
- package/src/base.ts +5 -1
- package/src/road.ts +54 -2
package/dist/base.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"AAAA,wIAAwI;AACxI,qBAAa,GAAI,SAAQ,KAAK;IAAY,IAAI,SAA0B;CAAE;AAC1E,OAAO,EAAE,GAAG,IAAI,MAAM,EAAE,CAAA;AAIxB;;;;;;;;;;GAUG;AACH,wBAAsB,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUpL;AAID;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAsD;AAIvG;;;;;GAKG;AACH,KAAK,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,IACvD,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAGhE;;;;;GAKG;AACH,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAChD;IAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAAE,GAAG,UAAU,CAAC,CAAC,CAAC;CAAC,CAAC,QAAQ,CAAC,CAAA;AAGhD;;;;;GAKG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,IAC/D,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;AAIrE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,SAAS;IACpB,kGAAkG;IAClG,MAAM,EAAE,MAAM,EAAE,CAAK;IACrB,0EAA0E;IAC1E,KAAK,SAAoB;IACzB,+DAA+D;IAC/D,KAAK,SAAgE;IACrE,iFAAiF;IACjF,KAAK,SAAuD;IAC5D,wFAAwF;IACxF,IAAI,KAAK,WAA8D;IACvE,iEAAiE;IACjE,IAAI,CAAC,WAA0B;IAC/B,+DAA+D;IAC/D,IAAI,EAAE,WAAwB;IAC9B,6BAA6B;IAC7B,IAAI,CAAC,WAAwB;IAC7B,4BAA4B;IAC5B,IAAI,CAAC,WAAyB;IAC9B,6BAA6B;IAC7B,IAAI,CAAC,WAAyB;IAC9B,+BAA+B;IAC/B,IAAI,CAAC,WAAyB;IAC9B,+BAA+B;IAC/B,IAAI,CAAC,WAA4B;IACjC,oCAAoC;IACpC,IAAI,EAAE,WAA4C;IAClD,oCAAoC;IACpC,IAAI,EAAE,WAA2B;IACjC,mCAAmC;IACnC,IAAI,EAAE,WAA2B;IACjC,mCAAmC;IACnC,IAAI,EAAE,WAA2B;CAClC;AACD,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,SAAS,IAAI,KAAK,EAAE,SAAS,IAAI,SAAS,EAAE,CAAA;AAIzE,uGAAuG;AACvG,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,EACxC,IAAI,GACJ,UAAU,GACV,SAAS,GACT,aAAa,GACb,MAAM,GACN,WAAW,GACX,UAAU,GACV,eAAe,GACf,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,MAAM,GACN,QAAQ,GACR,OAAO,MAAM,CAAC,QAAQ,GACtB,QAAQ,GACR,aAAa,GACb,MAAM,GACN,gBAAgB,GAChB,UAAU,GACV,KAAK,GACL,QAAQ,GACR,OAAO,GACP,YAAY,GACZ,UAAU,GACV,MAAM,GACN,QAAQ,GACR,YAAY,GACZ,YAAY,CACf,GAAG;IAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAA;AAIpC,yJAAyJ;AACzJ,eAAO,MAAM,eAAe,YAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAU,CAAA;AAC/D,iHAAiH;AACjH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOzD,CAAA;AACV,8JAA8J;AAC9J,eAAO,MAAM,aAAa,EAAG,CAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
|
package/dist/base.js
CHANGED
|
@@ -100,6 +100,8 @@ export const BASE122_ILLEGAL_INDEX = {
|
|
|
100
100
|
};
|
|
101
101
|
/** Shortened payload marker used when escaping an illegal 7-bit value and no subsequent 7-bit chunk is available (the current chunk is reused as payload). */
|
|
102
102
|
export const BASE122_SHORT = 0b111;
|
|
103
|
+
/** Lazy-initialized TextDecoder instance used for decoding base-122 encoded data. */
|
|
104
|
+
let DECODER;
|
|
103
105
|
/**
|
|
104
106
|
* Encodes indexed data into a base-122 representation.
|
|
105
107
|
*
|
|
@@ -140,7 +142,7 @@ export function encode122(data_) {
|
|
|
140
142
|
out[outIndex++] = 0b10000000 | (payload & 0b00111111);
|
|
141
143
|
}
|
|
142
144
|
}
|
|
143
|
-
return new TextDecoder("utf-8", { fatal: true }).decode(out.subarray(0, outIndex));
|
|
145
|
+
return (DECODER ??= new TextDecoder("utf-8", { fatal: true })).decode(out.subarray(0, outIndex));
|
|
144
146
|
}
|
|
145
147
|
/**
|
|
146
148
|
* Decodes a base-122 encoded string back into its original byte representation.
|
package/dist/road.d.ts
CHANGED
|
@@ -202,12 +202,17 @@ export declare class File extends Road {
|
|
|
202
202
|
writeAtomicSync(data_: Buffer | string, options_?: fs.WriteFileOptions): void;
|
|
203
203
|
write(data_: Buffer | string, options_?: fs.WriteFileOptions): Promise<void>;
|
|
204
204
|
writeSync(data_: Buffer | string, options_?: fs.WriteFileOptions): void;
|
|
205
|
+
writePast(offset_: number, data_: Buffer | string): Promise<void>;
|
|
206
|
+
writePastSync(offset_: number, data_: Buffer | string): void;
|
|
207
|
+
truncWritePast(offset_: number, data_: Buffer | string): Promise<void>;
|
|
208
|
+
truncWritePastSync(offset_: number, data_: Buffer | string): void;
|
|
205
209
|
append(data_: Buffer | string, options_?: fs.WriteFileOptions): Promise<void>;
|
|
206
210
|
appendSync(data_: Buffer | string, options_?: fs.WriteFileOptions): void;
|
|
207
211
|
check(): Promise<boolean>;
|
|
208
212
|
checkSync(): boolean;
|
|
209
213
|
isFile(): this is File;
|
|
210
214
|
}
|
|
215
|
+
export declare function file(...args: ConstructorParameters<typeof File>): File;
|
|
211
216
|
/** Helper type for filtering {@link Road} instances. */
|
|
212
217
|
export type filter_t<T extends Road> = ((road: Road) => road is T);
|
|
213
218
|
export declare class Folder extends Road {
|
|
@@ -254,6 +259,8 @@ export declare class Folder extends Road {
|
|
|
254
259
|
isDir(): this is Folder;
|
|
255
260
|
isDirectory(): this is Folder;
|
|
256
261
|
}
|
|
262
|
+
export declare function folder(...args: ConstructorParameters<typeof Folder>): Folder;
|
|
263
|
+
export declare function dir(...args: ConstructorParameters<typeof Folder>): Folder;
|
|
257
264
|
export declare function sysRoot(): Folder;
|
|
258
265
|
export declare function home(): Folder;
|
|
259
266
|
export declare function tmp(): Folder;
|
|
@@ -278,6 +285,7 @@ export declare class SymbolicLink extends Road {
|
|
|
278
285
|
isSymbolicLink(): this is SymbolicLink;
|
|
279
286
|
}
|
|
280
287
|
export { SymbolicLink as Symlink };
|
|
288
|
+
export declare function symlink(...args: ConstructorParameters<typeof SymbolicLink>): SymbolicLink;
|
|
281
289
|
export declare abstract class UnusableRoad extends Road {
|
|
282
290
|
readonly mutable: false;
|
|
283
291
|
size(): Promise<0>;
|
|
@@ -310,19 +318,23 @@ export declare class BlockDevice extends UnusableRoad {
|
|
|
310
318
|
checkSync(): boolean;
|
|
311
319
|
isBlockDevice(): this is BlockDevice;
|
|
312
320
|
}
|
|
321
|
+
export declare function blockDevice(...args: ConstructorParameters<typeof BlockDevice>): BlockDevice;
|
|
313
322
|
export declare class CharacterDevice extends UnusableRoad {
|
|
314
323
|
check(): Promise<boolean>;
|
|
315
324
|
checkSync(): boolean;
|
|
316
325
|
isCharacterDevice(): this is CharacterDevice;
|
|
317
326
|
}
|
|
327
|
+
export declare function characterDevice(...args: ConstructorParameters<typeof CharacterDevice>): CharacterDevice;
|
|
318
328
|
export declare class Fifo extends UnusableRoad {
|
|
319
329
|
check(): Promise<boolean>;
|
|
320
330
|
checkSync(): boolean;
|
|
321
331
|
isFifo(): this is Fifo;
|
|
322
332
|
}
|
|
333
|
+
export declare function fifo(...args: ConstructorParameters<typeof Fifo>): Fifo;
|
|
323
334
|
export declare class Socket extends UnusableRoad {
|
|
324
335
|
check(): Promise<boolean>;
|
|
325
336
|
checkSync(): boolean;
|
|
326
337
|
isSocket(): this is Socket;
|
|
327
338
|
}
|
|
339
|
+
export declare function socket(...args: ConstructorParameters<typeof Socket>): Socket;
|
|
328
340
|
//# sourceMappingURL=road.d.ts.map
|
package/dist/road.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"road.d.ts","sourceRoot":"","sources":["../src/road.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"road.d.ts","sourceRoot":"","sources":["../src/road.ts"],"names":[],"mappings":"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"}
|
package/dist/road.js
CHANGED
|
@@ -332,7 +332,7 @@ export class File extends Road {
|
|
|
332
332
|
return fs.readFileSync(this.isAt, options_);
|
|
333
333
|
}
|
|
334
334
|
async *itBuff(options_) {
|
|
335
|
-
const stream = fs.createReadStream(this.isAt, { ...options_
|
|
335
|
+
const stream = fs.createReadStream(this.isAt, { ...options_ });
|
|
336
336
|
try {
|
|
337
337
|
for await (const chunk of stream)
|
|
338
338
|
yield chunk;
|
|
@@ -453,6 +453,52 @@ export class File extends Road {
|
|
|
453
453
|
using _ = this.lockSync();
|
|
454
454
|
fs.writeFileSync(this.isAt, data_, options_);
|
|
455
455
|
}
|
|
456
|
+
async writePast(offset_, data_) {
|
|
457
|
+
using _ = await this.lock();
|
|
458
|
+
const fd = await fp.open(this.isAt, 'r+');
|
|
459
|
+
try {
|
|
460
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_;
|
|
461
|
+
await fd.write(buf, 0, buf.length, offset_);
|
|
462
|
+
}
|
|
463
|
+
finally {
|
|
464
|
+
await fd.close();
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
writePastSync(offset_, data_) {
|
|
468
|
+
using _ = this.lockSync();
|
|
469
|
+
const fd = fs.openSync(this.isAt, 'r+');
|
|
470
|
+
try {
|
|
471
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_;
|
|
472
|
+
fs.writeSync(fd, buf, 0, buf.length, offset_);
|
|
473
|
+
}
|
|
474
|
+
finally {
|
|
475
|
+
fs.closeSync(fd);
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
async truncWritePast(offset_, data_) {
|
|
479
|
+
using _ = await this.lock();
|
|
480
|
+
const fd = await fp.open(this.isAt, 'r+');
|
|
481
|
+
try {
|
|
482
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_;
|
|
483
|
+
await fd.write(buf, 0, buf.length, offset_);
|
|
484
|
+
await fd.truncate(offset_ + buf.length);
|
|
485
|
+
}
|
|
486
|
+
finally {
|
|
487
|
+
await fd.close();
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
truncWritePastSync(offset_, data_) {
|
|
491
|
+
using _ = this.lockSync();
|
|
492
|
+
const fd = fs.openSync(this.isAt, 'r+');
|
|
493
|
+
try {
|
|
494
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_;
|
|
495
|
+
fs.writeSync(fd, buf, 0, buf.length, offset_);
|
|
496
|
+
fs.truncateSync(this.isAt, offset_ + buf.length);
|
|
497
|
+
}
|
|
498
|
+
finally {
|
|
499
|
+
fs.closeSync(fd);
|
|
500
|
+
}
|
|
501
|
+
}
|
|
456
502
|
async append(data_, options_) {
|
|
457
503
|
using _ = await this.lock();
|
|
458
504
|
await fp.appendFile(this.isAt, data_, options_);
|
|
@@ -475,6 +521,7 @@ export class File extends Road {
|
|
|
475
521
|
} }
|
|
476
522
|
isFile() { return true; }
|
|
477
523
|
}
|
|
524
|
+
export function file(...args) { return new File(...args); }
|
|
478
525
|
export class Folder extends Road {
|
|
479
526
|
static async create(at_) {
|
|
480
527
|
try {
|
|
@@ -619,6 +666,8 @@ export class Folder extends Road {
|
|
|
619
666
|
isDir() { return true; }
|
|
620
667
|
isDirectory() { return true; }
|
|
621
668
|
}
|
|
669
|
+
export function folder(...args) { return new Folder(...args); }
|
|
670
|
+
export function dir(...args) { return new Folder(...args); }
|
|
622
671
|
export function sysRoot() { return new Folder(ph.parse(process.cwd()).root, false); }
|
|
623
672
|
export function home() { return new Folder(os.homedir(), false); }
|
|
624
673
|
export function tmp() { return new Folder(os.tmpdir(), false); }
|
|
@@ -687,6 +736,7 @@ export class SymbolicLink extends Road {
|
|
|
687
736
|
isSymbolicLink() { return true; }
|
|
688
737
|
}
|
|
689
738
|
export { SymbolicLink as Symlink };
|
|
739
|
+
export function symlink(...args) { return new SymbolicLink(...args); }
|
|
690
740
|
export class UnusableRoad extends Road {
|
|
691
741
|
mutable = false; // Modification will cause system issues (e.g. deleting a device file)
|
|
692
742
|
async size() { return 0; }
|
|
@@ -729,6 +779,7 @@ export class BlockDevice extends UnusableRoad {
|
|
|
729
779
|
} }
|
|
730
780
|
isBlockDevice() { return true; }
|
|
731
781
|
}
|
|
782
|
+
export function blockDevice(...args) { return new BlockDevice(...args); }
|
|
732
783
|
export class CharacterDevice extends UnusableRoad {
|
|
733
784
|
async check() { try {
|
|
734
785
|
return (await fp.lstat(this.isAt)).isCharacterDevice();
|
|
@@ -744,6 +795,7 @@ export class CharacterDevice extends UnusableRoad {
|
|
|
744
795
|
} }
|
|
745
796
|
isCharacterDevice() { return true; }
|
|
746
797
|
}
|
|
798
|
+
export function characterDevice(...args) { return new CharacterDevice(...args); }
|
|
747
799
|
export class Fifo extends UnusableRoad {
|
|
748
800
|
async check() { try {
|
|
749
801
|
return (await fp.lstat(this.isAt)).isFIFO();
|
|
@@ -759,6 +811,7 @@ export class Fifo extends UnusableRoad {
|
|
|
759
811
|
} }
|
|
760
812
|
isFifo() { return true; }
|
|
761
813
|
}
|
|
814
|
+
export function fifo(...args) { return new Fifo(...args); }
|
|
762
815
|
export class Socket extends UnusableRoad {
|
|
763
816
|
async check() { try {
|
|
764
817
|
return (await fp.lstat(this.isAt)).isSocket();
|
|
@@ -774,3 +827,4 @@ export class Socket extends UnusableRoad {
|
|
|
774
827
|
} }
|
|
775
828
|
isSocket() { return true; }
|
|
776
829
|
}
|
|
830
|
+
export function socket(...args) { return new Socket(...args); }
|
package/package.json
CHANGED
package/src/base.ts
CHANGED
|
@@ -177,6 +177,10 @@ export const BASE122_ILLEGAL_INDEX: Readonly<Record<number, number>> = {
|
|
|
177
177
|
export const BASE122_SHORT = 0b111 as const
|
|
178
178
|
|
|
179
179
|
|
|
180
|
+
/** Lazy-initialized TextDecoder instance used for decoding base-122 encoded data. */
|
|
181
|
+
let DECODER: TextDecoder
|
|
182
|
+
|
|
183
|
+
|
|
180
184
|
/**
|
|
181
185
|
* Encodes indexed data into a base-122 representation.
|
|
182
186
|
*
|
|
@@ -219,7 +223,7 @@ export function encode122(data_: ArrayLike<number>): string {
|
|
|
219
223
|
out[outIndex++] = 0b10000000 | (payload & 0b00111111)
|
|
220
224
|
}
|
|
221
225
|
}
|
|
222
|
-
return new TextDecoder("utf-8", { fatal: true }).decode(out.subarray(0, outIndex))
|
|
226
|
+
return (DECODER ??= new TextDecoder("utf-8", { fatal: true })).decode(out.subarray(0, outIndex))
|
|
223
227
|
}
|
|
224
228
|
|
|
225
229
|
|
package/src/road.ts
CHANGED
|
@@ -351,7 +351,7 @@ export class File extends Road {
|
|
|
351
351
|
}
|
|
352
352
|
|
|
353
353
|
async *itBuff(options_?: Exclude<Parameters<typeof fs.createReadStream>[1], BufferEncoding> & {encoding?:never}): AsyncGenerator<Buffer> {
|
|
354
|
-
const stream = fs.createReadStream(this.isAt, { ...options_
|
|
354
|
+
const stream = fs.createReadStream(this.isAt, { ...options_ })
|
|
355
355
|
try {
|
|
356
356
|
for await (const chunk of stream)
|
|
357
357
|
yield chunk
|
|
@@ -456,6 +456,42 @@ export class File extends Road {
|
|
|
456
456
|
using _ = this.lockSync()
|
|
457
457
|
fs.writeFileSync(this.isAt, data_, options_)
|
|
458
458
|
}
|
|
459
|
+
async writePast(offset_: number, data_: Buffer | string) {
|
|
460
|
+
using _ = await this.lock()
|
|
461
|
+
const fd = await fp.open(this.isAt, 'r+')
|
|
462
|
+
try {
|
|
463
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_
|
|
464
|
+
await fd.write(buf, 0, buf.length, offset_)
|
|
465
|
+
} finally { await fd.close() }
|
|
466
|
+
}
|
|
467
|
+
writePastSync(offset_: number, data_: Buffer | string) {
|
|
468
|
+
using _ = this.lockSync()
|
|
469
|
+
const fd = fs.openSync(this.isAt, 'r+')
|
|
470
|
+
try {
|
|
471
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_
|
|
472
|
+
fs.writeSync(fd, buf, 0, buf.length, offset_)
|
|
473
|
+
} finally { fs.closeSync(fd) }
|
|
474
|
+
}
|
|
475
|
+
async truncWritePast(offset_: number, data_: Buffer | string) {
|
|
476
|
+
using _ = await this.lock()
|
|
477
|
+
const fd = await fp.open(this.isAt, 'r+')
|
|
478
|
+
try {
|
|
479
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_
|
|
480
|
+
await fd.write(buf, 0, buf.length, offset_)
|
|
481
|
+
await fd.truncate(offset_ + buf.length)
|
|
482
|
+
}
|
|
483
|
+
finally { await fd.close() }
|
|
484
|
+
}
|
|
485
|
+
truncWritePastSync(offset_: number, data_: Buffer | string) {
|
|
486
|
+
using _ = this.lockSync()
|
|
487
|
+
const fd = fs.openSync(this.isAt, 'r+')
|
|
488
|
+
try {
|
|
489
|
+
const buf = typeof data_ === 'string' ? Buffer.from(data_) : data_
|
|
490
|
+
fs.writeSync(fd, buf, 0, buf.length, offset_)
|
|
491
|
+
fs.truncateSync(this.isAt, offset_ + buf.length)
|
|
492
|
+
}
|
|
493
|
+
finally { fs.closeSync(fd) }
|
|
494
|
+
}
|
|
459
495
|
async append(data_: Buffer | string, options_?: fs.WriteFileOptions) {
|
|
460
496
|
using _ = await this.lock()
|
|
461
497
|
await fp.appendFile(this.isAt, data_, options_)
|
|
@@ -472,6 +508,9 @@ export class File extends Road {
|
|
|
472
508
|
}
|
|
473
509
|
|
|
474
510
|
|
|
511
|
+
export function file(...args: ConstructorParameters<typeof File>): File { return new File(...args) }
|
|
512
|
+
|
|
513
|
+
|
|
475
514
|
|
|
476
515
|
/** Helper type for filtering {@link Road} instances. */
|
|
477
516
|
export type filter_t<T extends Road> = ((road: Road) => road is T)
|
|
@@ -622,6 +661,10 @@ export class Folder extends Road {
|
|
|
622
661
|
}
|
|
623
662
|
|
|
624
663
|
|
|
664
|
+
export function folder(...args: ConstructorParameters<typeof Folder>): Folder { return new Folder(...args) }
|
|
665
|
+
export function dir(...args: ConstructorParameters<typeof Folder>): Folder { return new Folder(...args) }
|
|
666
|
+
|
|
667
|
+
|
|
625
668
|
export function sysRoot() { return new Folder(ph.parse(process.cwd()).root, false) }
|
|
626
669
|
export function home() { return new Folder(os.homedir(), false) }
|
|
627
670
|
export function tmp() { return new Folder(os.tmpdir(), false) }
|
|
@@ -679,9 +722,14 @@ export class SymbolicLink extends Road {
|
|
|
679
722
|
override isSymlink(): this is SymbolicLink { return true as const }
|
|
680
723
|
override isSymbolicLink(): this is SymbolicLink { return true as const }
|
|
681
724
|
}
|
|
725
|
+
|
|
726
|
+
|
|
682
727
|
export { SymbolicLink as Symlink }
|
|
683
728
|
|
|
684
729
|
|
|
730
|
+
export function symlink(...args: ConstructorParameters<typeof SymbolicLink>): SymbolicLink { return new SymbolicLink(...args) }
|
|
731
|
+
|
|
732
|
+
|
|
685
733
|
|
|
686
734
|
export abstract class UnusableRoad extends Road {
|
|
687
735
|
override readonly mutable = false as const // Modification will cause system issues (e.g. deleting a device file)
|
|
@@ -716,18 +764,22 @@ export class BlockDevice extends UnusableRoad {
|
|
|
716
764
|
checkSync(): boolean { try { return fs.lstatSync(this.isAt).isBlockDevice() } catch { return false } }
|
|
717
765
|
override isBlockDevice(): this is BlockDevice { return true as const }
|
|
718
766
|
}
|
|
767
|
+
export function blockDevice(...args: ConstructorParameters<typeof BlockDevice>): BlockDevice { return new BlockDevice(...args) }
|
|
719
768
|
export class CharacterDevice extends UnusableRoad {
|
|
720
769
|
async check(): Promise<boolean> { try { return (await fp.lstat(this.isAt)).isCharacterDevice() } catch { return false } }
|
|
721
770
|
checkSync(): boolean { try { return fs.lstatSync(this.isAt).isCharacterDevice() } catch { return false } }
|
|
722
771
|
override isCharacterDevice(): this is CharacterDevice { return true as const }
|
|
723
772
|
}
|
|
773
|
+
export function characterDevice(...args: ConstructorParameters<typeof CharacterDevice>): CharacterDevice { return new CharacterDevice(...args) }
|
|
724
774
|
export class Fifo extends UnusableRoad {
|
|
725
775
|
async check(): Promise<boolean> { try { return (await fp.lstat(this.isAt)).isFIFO() } catch { return false } }
|
|
726
776
|
checkSync(): boolean { try { return fs.lstatSync(this.isAt).isFIFO() } catch { return false } }
|
|
727
777
|
override isFifo(): this is Fifo { return true as const }
|
|
728
778
|
}
|
|
779
|
+
export function fifo(...args: ConstructorParameters<typeof Fifo>): Fifo { return new Fifo(...args) }
|
|
729
780
|
export class Socket extends UnusableRoad {
|
|
730
781
|
async check(): Promise<boolean> { try { return (await fp.lstat(this.isAt)).isSocket() } catch { return false } }
|
|
731
782
|
checkSync(): boolean { try { return fs.lstatSync(this.isAt).isSocket() } catch { return false } }
|
|
732
783
|
override isSocket(): this is Socket { return true as const }
|
|
733
|
-
}
|
|
784
|
+
}
|
|
785
|
+
export function socket(...args: ConstructorParameters<typeof Socket>): Socket { return new Socket(...args) }
|