@@ -3,7 +3,7 @@ import { URL } from 'url';
3
3
import { resolve } from 'path' ;
4
4
import { Buffer } from 'buffer' ;
5
5
6
- import { SAXParser } from '../../../lib/cjs/index.js' ;
6
+ import { SAXParser , SaxEventType } from '../../../lib/cjs/index.js' ;
7
7
8
8
import nodeXml from 'node-xml' ;
9
9
import expat from 'node-expat' ;
@@ -24,7 +24,7 @@ async function benchmarkSaxWasmParser() {
24
24
let t = process . hrtime ( ) ;
25
25
let offset = 0 ;
26
26
while ( offset < xml . length ) {
27
- parser . write ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
27
+ parser . write ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
28
28
offset += chunkLen ;
29
29
}
30
30
parser . end ( ) ;
@@ -38,7 +38,7 @@ async function benchmarkNodeXmlParser() {
38
38
let t = process . hrtime ( ) ;
39
39
let offset = 0 ;
40
40
while ( offset < xml . length ) {
41
- parser . parseString ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
41
+ parser . parseString ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
42
42
offset += chunkLen ;
43
43
}
44
44
let [ s , n ] = process . hrtime ( t ) ;
@@ -50,7 +50,7 @@ async function benchmarkExpatParser() {
50
50
let t = process . hrtime ( ) ;
51
51
let offset = 0 ;
52
52
while ( offset < xml . length ) {
53
- parser . parse ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
53
+ parser . parse ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
54
54
offset += chunkLen ;
55
55
}
56
56
@@ -64,7 +64,7 @@ async function benchmarkSaxesParser() {
64
64
65
65
let offset = 0 ;
66
66
while ( offset < xml . length ) {
67
- parser . write ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
67
+ parser . write ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
68
68
offset += chunkLen ;
69
69
}
70
70
let [ s , n ] = process . hrtime ( t ) ;
@@ -78,7 +78,7 @@ async function benchmarkSaxParser() {
78
78
79
79
let offset = 0 ;
80
80
while ( offset < xml . length ) {
81
- parser . write ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
81
+ parser . write ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
82
82
offset += chunkLen ;
83
83
}
84
84
let [ s , n ] = process . hrtime ( t ) ;
@@ -91,7 +91,7 @@ async function benchmarkLtxParser() {
91
91
92
92
let offset = 0 ;
93
93
while ( offset < xml . length ) {
94
- parser . write ( Buffer . from ( xml . slice ( offset , chunkLen ) ) ) ;
94
+ parser . write ( Buffer . from ( xml . slice ( offset , chunkLen + offset ) ) ) ;
95
95
offset += chunkLen ;
96
96
}
97
97
@@ -100,7 +100,7 @@ async function benchmarkLtxParser() {
100
100
}
101
101
102
102
async function benchmark ( ) {
103
- let t = 100 ;
103
+ let t = 10 ;
104
104
let benchmarks = { saxWasm : [ ] , nodeXml : [ ] , saxes : [ ] , sax : [ ] , expat : [ ] , ltx : [ ] } ;
105
105
while ( t -- ) {
106
106
benchmarks . saxWasm . push ( await benchmarkSaxWasmParser ( ) ) ;
0 commit comments