lmdbx
Version:
Simple, efficient, scalable data store wrapper for libmdbx
30 lines (27 loc) • 1.45 kB
JavaScript
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
import { fileURLToPath } from 'url';
import { dirname, default as path } from 'path';
import EventEmitter from 'events';
import { setExternals, setNativeFunctions } from './external.js';
import { arch } from 'os';
import fs from 'fs';
import { Encoder as MsgpackrEncoder } from 'msgpackr';
import { WeakLRUCache } from 'weak-lru-cache';
import * as orderedBinary from 'ordered-binary';
orderedBinary.enableNullTermination();
let dirName = dirname(fileURLToPath(import.meta.url)).replace(/dist$/, '');
setNativeFunctions(require('node-gyp-build')(dirName));
setExternals({
require, arch, fs, path, MsgpackrEncoder, WeakLRUCache, orderedBinary, EventEmitter
});
export { toBufferKey as keyValueToBuffer, compareKeys, compareKeys as compareKey, fromBufferKey as bufferToKeyValue } from 'ordered-binary';
export { ABORT, IF_EXISTS, asBinary } from './write.js';
export { levelup } from './level.js';
export { clearKeptObjects } from './external.js';
export { open, getLastVersion, getLastEntrySize, setLastVersion, allDbs } from './open.js';
import { toBufferKey as keyValueToBuffer, compareKeys as compareKey, fromBufferKey as bufferToKeyValue } from 'ordered-binary';
import { open, getLastVersion } from './open.js';
export default {
open, getLastVersion, compareKey, keyValueToBuffer, bufferToKeyValue, path, EventEmitter
};