20 lines
413 B
JavaScript
20 lines
413 B
JavaScript
|
'use strict'
|
||
|
|
||
|
/** @type {{ textEncoder: TextEncoder, textDecoder: TextDecoder }|null} */
|
||
|
let lazy = null
|
||
|
|
||
|
/**
|
||
|
* Get semi-global instances of TextEncoder and TextDecoder.
|
||
|
* @returns {{ textEncoder: TextEncoder, textDecoder: TextDecoder }}
|
||
|
*/
|
||
|
module.exports = function () {
|
||
|
if (lazy === null) {
|
||
|
lazy = {
|
||
|
textEncoder: new TextEncoder(),
|
||
|
textDecoder: new TextDecoder()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return lazy
|
||
|
}
|