strtok3 6.0.8 → 6.1.3
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/LICENSE +14 -14
- package/README.md +300 -301
- package/lib/AbstractTokenizer.d.ts +62 -62
- package/lib/AbstractTokenizer.js +69 -69
- package/lib/BufferTokenizer.d.ts +37 -37
- package/lib/BufferTokenizer.js +114 -114
- package/lib/FileTokenizer.d.ts +28 -28
- package/lib/FileTokenizer.js +112 -112
- package/lib/FsPromise.d.ts +18 -18
- package/lib/FsPromise.js +79 -79
- package/lib/ReadStreamTokenizer.d.ts +28 -28
- package/lib/ReadStreamTokenizer.js +128 -128
- package/lib/core.d.ts +23 -23
- package/lib/core.js +29 -29
- package/lib/index.d.ts +15 -15
- package/lib/index.js +27 -27
- package/lib/types.d.ts +103 -103
- package/lib/types.js +2 -2
- package/package.json +100 -100
package/lib/FileTokenizer.js
CHANGED
|
@@ -1,112 +1,112 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fromFile = exports.FileTokenizer = void 0;
|
|
4
|
-
const AbstractTokenizer_1 = require("./AbstractTokenizer");
|
|
5
|
-
const peek_readable_1 = require("peek-readable");
|
|
6
|
-
const fs = require("./FsPromise");
|
|
7
|
-
class FileTokenizer extends AbstractTokenizer_1.AbstractTokenizer {
|
|
8
|
-
constructor(fd, fileInfo) {
|
|
9
|
-
super(fileInfo);
|
|
10
|
-
this.fd = fd;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Read buffer from file
|
|
14
|
-
* @param buffer
|
|
15
|
-
* @param options - Read behaviour options
|
|
16
|
-
* @returns Promise number of bytes read
|
|
17
|
-
*/
|
|
18
|
-
async readBuffer(buffer, options) {
|
|
19
|
-
let offset = 0;
|
|
20
|
-
let length = buffer.length;
|
|
21
|
-
if (options) {
|
|
22
|
-
if (options.position) {
|
|
23
|
-
if (options.position < this.position) {
|
|
24
|
-
throw new Error('`options.position` must be equal or greater than `tokenizer.position`');
|
|
25
|
-
}
|
|
26
|
-
this.position = options.position;
|
|
27
|
-
}
|
|
28
|
-
if (Number.isInteger(options.length)) {
|
|
29
|
-
length = options.length;
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
length -= options.offset || 0;
|
|
33
|
-
}
|
|
34
|
-
if (options.offset) {
|
|
35
|
-
offset = options.offset;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
if (length === 0) {
|
|
39
|
-
return Promise.resolve(0);
|
|
40
|
-
}
|
|
41
|
-
const res = await fs.read(this.fd, buffer, offset, length, this.position);
|
|
42
|
-
this.position += res.bytesRead;
|
|
43
|
-
if (res.bytesRead < length && (!options || !options.mayBeLess)) {
|
|
44
|
-
throw new peek_readable_1.EndOfStreamError();
|
|
45
|
-
}
|
|
46
|
-
return res.bytesRead;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Peek buffer from file
|
|
50
|
-
* @param buffer
|
|
51
|
-
* @param options - Read behaviour options
|
|
52
|
-
* @returns Promise number of bytes read
|
|
53
|
-
*/
|
|
54
|
-
async peekBuffer(buffer, options) {
|
|
55
|
-
let offset = 0;
|
|
56
|
-
let length = buffer.length;
|
|
57
|
-
let position = this.position;
|
|
58
|
-
if (options) {
|
|
59
|
-
if (options.position) {
|
|
60
|
-
if (options.position < this.position) {
|
|
61
|
-
throw new Error('`options.position` must be equal or greater than `tokenizer.position`');
|
|
62
|
-
}
|
|
63
|
-
position = options.position;
|
|
64
|
-
}
|
|
65
|
-
if (Number.isInteger(options.length)) {
|
|
66
|
-
length = options.length;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
length -= options.offset || 0;
|
|
70
|
-
}
|
|
71
|
-
if (options.offset) {
|
|
72
|
-
offset = options.offset;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
if (length === 0) {
|
|
76
|
-
return Promise.resolve(0);
|
|
77
|
-
}
|
|
78
|
-
const res = await fs.read(this.fd, buffer, offset, length, position);
|
|
79
|
-
if ((!options || !options.mayBeLess) && res.bytesRead < length) {
|
|
80
|
-
throw new peek_readable_1.EndOfStreamError();
|
|
81
|
-
}
|
|
82
|
-
return res.bytesRead;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* @param length - Number of bytes to ignore
|
|
86
|
-
* @return resolves the number of bytes ignored, equals length if this available, otherwise the number of bytes available
|
|
87
|
-
*/
|
|
88
|
-
async ignore(length) {
|
|
89
|
-
const bytesLeft = this.fileInfo.size - this.position;
|
|
90
|
-
if (length <= bytesLeft) {
|
|
91
|
-
this.position += length;
|
|
92
|
-
return length;
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
this.position += bytesLeft;
|
|
96
|
-
return bytesLeft;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
async close() {
|
|
100
|
-
return fs.close(this.fd);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
exports.FileTokenizer = FileTokenizer;
|
|
104
|
-
async function fromFile(sourceFilePath) {
|
|
105
|
-
const stat = await fs.stat(sourceFilePath);
|
|
106
|
-
if (!stat.isFile) {
|
|
107
|
-
throw new Error(`File not a file: ${sourceFilePath}`);
|
|
108
|
-
}
|
|
109
|
-
const fd = await fs.open(sourceFilePath, 'r');
|
|
110
|
-
return new FileTokenizer(fd, { path: sourceFilePath, size: stat.size });
|
|
111
|
-
}
|
|
112
|
-
exports.fromFile = fromFile;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fromFile = exports.FileTokenizer = void 0;
|
|
4
|
+
const AbstractTokenizer_1 = require("./AbstractTokenizer");
|
|
5
|
+
const peek_readable_1 = require("peek-readable");
|
|
6
|
+
const fs = require("./FsPromise");
|
|
7
|
+
class FileTokenizer extends AbstractTokenizer_1.AbstractTokenizer {
|
|
8
|
+
constructor(fd, fileInfo) {
|
|
9
|
+
super(fileInfo);
|
|
10
|
+
this.fd = fd;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Read buffer from file
|
|
14
|
+
* @param buffer
|
|
15
|
+
* @param options - Read behaviour options
|
|
16
|
+
* @returns Promise number of bytes read
|
|
17
|
+
*/
|
|
18
|
+
async readBuffer(buffer, options) {
|
|
19
|
+
let offset = 0;
|
|
20
|
+
let length = buffer.length;
|
|
21
|
+
if (options) {
|
|
22
|
+
if (options.position) {
|
|
23
|
+
if (options.position < this.position) {
|
|
24
|
+
throw new Error('`options.position` must be equal or greater than `tokenizer.position`');
|
|
25
|
+
}
|
|
26
|
+
this.position = options.position;
|
|
27
|
+
}
|
|
28
|
+
if (Number.isInteger(options.length)) {
|
|
29
|
+
length = options.length;
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
length -= options.offset || 0;
|
|
33
|
+
}
|
|
34
|
+
if (options.offset) {
|
|
35
|
+
offset = options.offset;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (length === 0) {
|
|
39
|
+
return Promise.resolve(0);
|
|
40
|
+
}
|
|
41
|
+
const res = await fs.read(this.fd, buffer, offset, length, this.position);
|
|
42
|
+
this.position += res.bytesRead;
|
|
43
|
+
if (res.bytesRead < length && (!options || !options.mayBeLess)) {
|
|
44
|
+
throw new peek_readable_1.EndOfStreamError();
|
|
45
|
+
}
|
|
46
|
+
return res.bytesRead;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Peek buffer from file
|
|
50
|
+
* @param buffer
|
|
51
|
+
* @param options - Read behaviour options
|
|
52
|
+
* @returns Promise number of bytes read
|
|
53
|
+
*/
|
|
54
|
+
async peekBuffer(buffer, options) {
|
|
55
|
+
let offset = 0;
|
|
56
|
+
let length = buffer.length;
|
|
57
|
+
let position = this.position;
|
|
58
|
+
if (options) {
|
|
59
|
+
if (options.position) {
|
|
60
|
+
if (options.position < this.position) {
|
|
61
|
+
throw new Error('`options.position` must be equal or greater than `tokenizer.position`');
|
|
62
|
+
}
|
|
63
|
+
position = options.position;
|
|
64
|
+
}
|
|
65
|
+
if (Number.isInteger(options.length)) {
|
|
66
|
+
length = options.length;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
length -= options.offset || 0;
|
|
70
|
+
}
|
|
71
|
+
if (options.offset) {
|
|
72
|
+
offset = options.offset;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (length === 0) {
|
|
76
|
+
return Promise.resolve(0);
|
|
77
|
+
}
|
|
78
|
+
const res = await fs.read(this.fd, buffer, offset, length, position);
|
|
79
|
+
if ((!options || !options.mayBeLess) && res.bytesRead < length) {
|
|
80
|
+
throw new peek_readable_1.EndOfStreamError();
|
|
81
|
+
}
|
|
82
|
+
return res.bytesRead;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* @param length - Number of bytes to ignore
|
|
86
|
+
* @return resolves the number of bytes ignored, equals length if this available, otherwise the number of bytes available
|
|
87
|
+
*/
|
|
88
|
+
async ignore(length) {
|
|
89
|
+
const bytesLeft = this.fileInfo.size - this.position;
|
|
90
|
+
if (length <= bytesLeft) {
|
|
91
|
+
this.position += length;
|
|
92
|
+
return length;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this.position += bytesLeft;
|
|
96
|
+
return bytesLeft;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
async close() {
|
|
100
|
+
return fs.close(this.fd);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.FileTokenizer = FileTokenizer;
|
|
104
|
+
async function fromFile(sourceFilePath) {
|
|
105
|
+
const stat = await fs.stat(sourceFilePath);
|
|
106
|
+
if (!stat.isFile) {
|
|
107
|
+
throw new Error(`File not a file: ${sourceFilePath}`);
|
|
108
|
+
}
|
|
109
|
+
const fd = await fs.open(sourceFilePath, 'r');
|
|
110
|
+
return new FileTokenizer(fd, { path: sourceFilePath, size: stat.size });
|
|
111
|
+
}
|
|
112
|
+
exports.fromFile = fromFile;
|
package/lib/FsPromise.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Module convert fs functions to promise based functions
|
|
3
|
-
*/
|
|
4
|
-
/// <reference types="node" />
|
|
5
|
-
import * as fs from 'fs';
|
|
6
|
-
export interface IReadResult {
|
|
7
|
-
bytesRead: number;
|
|
8
|
-
buffer: Buffer;
|
|
9
|
-
}
|
|
10
|
-
export declare const pathExists: typeof fs.existsSync;
|
|
11
|
-
export declare const createReadStream: typeof fs.createReadStream;
|
|
12
|
-
export declare function stat(path: fs.PathLike): Promise<fs.Stats>;
|
|
13
|
-
export declare function close(fd: number): Promise<void>;
|
|
14
|
-
export declare function open(path: fs.PathLike, mode?: string): Promise<number>;
|
|
15
|
-
export declare function read(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<IReadResult>;
|
|
16
|
-
export declare function writeFile(path: fs.PathLike, data: Buffer | string): Promise<void>;
|
|
17
|
-
export declare function writeFileSync(path: fs.PathLike, data: Buffer | string): void;
|
|
18
|
-
export declare function readFile(path: fs.PathLike): Promise<Buffer>;
|
|
1
|
+
/**
|
|
2
|
+
* Module convert fs functions to promise based functions
|
|
3
|
+
*/
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
import * as fs from 'fs';
|
|
6
|
+
export interface IReadResult {
|
|
7
|
+
bytesRead: number;
|
|
8
|
+
buffer: Buffer;
|
|
9
|
+
}
|
|
10
|
+
export declare const pathExists: typeof fs.existsSync;
|
|
11
|
+
export declare const createReadStream: typeof fs.createReadStream;
|
|
12
|
+
export declare function stat(path: fs.PathLike): Promise<fs.Stats>;
|
|
13
|
+
export declare function close(fd: number): Promise<void>;
|
|
14
|
+
export declare function open(path: fs.PathLike, mode?: string): Promise<number>;
|
|
15
|
+
export declare function read(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<IReadResult>;
|
|
16
|
+
export declare function writeFile(path: fs.PathLike, data: Buffer | string): Promise<void>;
|
|
17
|
+
export declare function writeFileSync(path: fs.PathLike, data: Buffer | string): void;
|
|
18
|
+
export declare function readFile(path: fs.PathLike): Promise<Buffer>;
|
package/lib/FsPromise.js
CHANGED
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Module convert fs functions to promise based functions
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.readFile = exports.writeFileSync = exports.writeFile = exports.read = exports.open = exports.close = exports.stat = exports.createReadStream = exports.pathExists = void 0;
|
|
7
|
-
const fs = require("fs");
|
|
8
|
-
exports.pathExists = fs.existsSync;
|
|
9
|
-
exports.createReadStream = fs.createReadStream;
|
|
10
|
-
async function stat(path) {
|
|
11
|
-
return new Promise((resolve, reject) => {
|
|
12
|
-
fs.stat(path, (err, stats) => {
|
|
13
|
-
if (err)
|
|
14
|
-
reject(err);
|
|
15
|
-
else
|
|
16
|
-
resolve(stats);
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
exports.stat = stat;
|
|
21
|
-
async function close(fd) {
|
|
22
|
-
return new Promise((resolve, reject) => {
|
|
23
|
-
fs.close(fd, err => {
|
|
24
|
-
if (err)
|
|
25
|
-
reject(err);
|
|
26
|
-
else
|
|
27
|
-
resolve();
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
exports.close = close;
|
|
32
|
-
async function open(path, mode) {
|
|
33
|
-
return new Promise((resolve, reject) => {
|
|
34
|
-
fs.open(path, mode, (err, fd) => {
|
|
35
|
-
if (err)
|
|
36
|
-
reject(err);
|
|
37
|
-
else
|
|
38
|
-
resolve(fd);
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
exports.open = open;
|
|
43
|
-
async function read(fd, buffer, offset, length, position) {
|
|
44
|
-
return new Promise((resolve, reject) => {
|
|
45
|
-
fs.read(fd, buffer, offset, length, position, (err, bytesRead, _buffer) => {
|
|
46
|
-
if (err)
|
|
47
|
-
reject(err);
|
|
48
|
-
else
|
|
49
|
-
resolve({ bytesRead, buffer: _buffer });
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
exports.read = read;
|
|
54
|
-
async function writeFile(path, data) {
|
|
55
|
-
return new Promise((resolve, reject) => {
|
|
56
|
-
fs.writeFile(path, data, err => {
|
|
57
|
-
if (err)
|
|
58
|
-
reject(err);
|
|
59
|
-
else
|
|
60
|
-
resolve();
|
|
61
|
-
});
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
exports.writeFile = writeFile;
|
|
65
|
-
function writeFileSync(path, data) {
|
|
66
|
-
fs.writeFileSync(path, data);
|
|
67
|
-
}
|
|
68
|
-
exports.writeFileSync = writeFileSync;
|
|
69
|
-
async function readFile(path) {
|
|
70
|
-
return new Promise((resolve, reject) => {
|
|
71
|
-
fs.readFile(path, (err, buffer) => {
|
|
72
|
-
if (err)
|
|
73
|
-
reject(err);
|
|
74
|
-
else
|
|
75
|
-
resolve(buffer);
|
|
76
|
-
});
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
exports.readFile = readFile;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Module convert fs functions to promise based functions
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.readFile = exports.writeFileSync = exports.writeFile = exports.read = exports.open = exports.close = exports.stat = exports.createReadStream = exports.pathExists = void 0;
|
|
7
|
+
const fs = require("fs");
|
|
8
|
+
exports.pathExists = fs.existsSync;
|
|
9
|
+
exports.createReadStream = fs.createReadStream;
|
|
10
|
+
async function stat(path) {
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
fs.stat(path, (err, stats) => {
|
|
13
|
+
if (err)
|
|
14
|
+
reject(err);
|
|
15
|
+
else
|
|
16
|
+
resolve(stats);
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
exports.stat = stat;
|
|
21
|
+
async function close(fd) {
|
|
22
|
+
return new Promise((resolve, reject) => {
|
|
23
|
+
fs.close(fd, err => {
|
|
24
|
+
if (err)
|
|
25
|
+
reject(err);
|
|
26
|
+
else
|
|
27
|
+
resolve();
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
exports.close = close;
|
|
32
|
+
async function open(path, mode) {
|
|
33
|
+
return new Promise((resolve, reject) => {
|
|
34
|
+
fs.open(path, mode, (err, fd) => {
|
|
35
|
+
if (err)
|
|
36
|
+
reject(err);
|
|
37
|
+
else
|
|
38
|
+
resolve(fd);
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
exports.open = open;
|
|
43
|
+
async function read(fd, buffer, offset, length, position) {
|
|
44
|
+
return new Promise((resolve, reject) => {
|
|
45
|
+
fs.read(fd, buffer, offset, length, position, (err, bytesRead, _buffer) => {
|
|
46
|
+
if (err)
|
|
47
|
+
reject(err);
|
|
48
|
+
else
|
|
49
|
+
resolve({ bytesRead, buffer: _buffer });
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
exports.read = read;
|
|
54
|
+
async function writeFile(path, data) {
|
|
55
|
+
return new Promise((resolve, reject) => {
|
|
56
|
+
fs.writeFile(path, data, err => {
|
|
57
|
+
if (err)
|
|
58
|
+
reject(err);
|
|
59
|
+
else
|
|
60
|
+
resolve();
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
exports.writeFile = writeFile;
|
|
65
|
+
function writeFileSync(path, data) {
|
|
66
|
+
fs.writeFileSync(path, data);
|
|
67
|
+
}
|
|
68
|
+
exports.writeFileSync = writeFileSync;
|
|
69
|
+
async function readFile(path) {
|
|
70
|
+
return new Promise((resolve, reject) => {
|
|
71
|
+
fs.readFile(path, (err, buffer) => {
|
|
72
|
+
if (err)
|
|
73
|
+
reject(err);
|
|
74
|
+
else
|
|
75
|
+
resolve(buffer);
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
exports.readFile = readFile;
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { AbstractTokenizer } from './AbstractTokenizer';
|
|
3
|
-
import * as Stream from 'stream';
|
|
4
|
-
import { IFileInfo, IReadChunkOptions } from './types';
|
|
5
|
-
export declare class ReadStreamTokenizer extends AbstractTokenizer {
|
|
6
|
-
private streamReader;
|
|
7
|
-
constructor(stream: Stream.Readable, fileInfo?: IFileInfo);
|
|
8
|
-
/**
|
|
9
|
-
* Get file information, an HTTP-client may implement this doing a HEAD request
|
|
10
|
-
* @return Promise with file information
|
|
11
|
-
*/
|
|
12
|
-
getFileInfo(): Promise<IFileInfo>;
|
|
13
|
-
/**
|
|
14
|
-
* Read buffer from tokenizer
|
|
15
|
-
* @param buffer - Target buffer to fill with data read from the tokenizer-stream
|
|
16
|
-
* @param options - Read behaviour options
|
|
17
|
-
* @returns Promise with number of bytes read
|
|
18
|
-
*/
|
|
19
|
-
readBuffer(buffer: Buffer | Uint8Array, options?: IReadChunkOptions): Promise<number>;
|
|
20
|
-
/**
|
|
21
|
-
* Peek (read ahead) buffer from tokenizer
|
|
22
|
-
* @param buffer - Target buffer to write the data read to
|
|
23
|
-
* @param options - Read behaviour options
|
|
24
|
-
* @returns Promise with number of bytes peeked
|
|
25
|
-
*/
|
|
26
|
-
peekBuffer(buffer: Buffer | Uint8Array, options?: IReadChunkOptions): Promise<number>;
|
|
27
|
-
ignore(length: number): Promise<number>;
|
|
28
|
-
}
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { AbstractTokenizer } from './AbstractTokenizer';
|
|
3
|
+
import * as Stream from 'stream';
|
|
4
|
+
import { IFileInfo, IReadChunkOptions } from './types';
|
|
5
|
+
export declare class ReadStreamTokenizer extends AbstractTokenizer {
|
|
6
|
+
private streamReader;
|
|
7
|
+
constructor(stream: Stream.Readable, fileInfo?: IFileInfo);
|
|
8
|
+
/**
|
|
9
|
+
* Get file information, an HTTP-client may implement this doing a HEAD request
|
|
10
|
+
* @return Promise with file information
|
|
11
|
+
*/
|
|
12
|
+
getFileInfo(): Promise<IFileInfo>;
|
|
13
|
+
/**
|
|
14
|
+
* Read buffer from tokenizer
|
|
15
|
+
* @param buffer - Target buffer to fill with data read from the tokenizer-stream
|
|
16
|
+
* @param options - Read behaviour options
|
|
17
|
+
* @returns Promise with number of bytes read
|
|
18
|
+
*/
|
|
19
|
+
readBuffer(buffer: Buffer | Uint8Array, options?: IReadChunkOptions): Promise<number>;
|
|
20
|
+
/**
|
|
21
|
+
* Peek (read ahead) buffer from tokenizer
|
|
22
|
+
* @param buffer - Target buffer to write the data read to
|
|
23
|
+
* @param options - Read behaviour options
|
|
24
|
+
* @returns Promise with number of bytes peeked
|
|
25
|
+
*/
|
|
26
|
+
peekBuffer(buffer: Buffer | Uint8Array, options?: IReadChunkOptions): Promise<number>;
|
|
27
|
+
ignore(length: number): Promise<number>;
|
|
28
|
+
}
|