The JavaScript Database, for Node.js, nw.js, electron and the browser
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nedb/lib/indexes.js

25 lines
838 B

var BinarySearchTree = require('binary-search-tree').BinarySearchTree;
/**
* Create a new index
* @param {String} options.fieldName On which field should the index apply
* @param {Datastore} options.datastore Datastore on which the index is created
* @param {Boolean} options.unique Optional, enforce a unique constraint (default: false)
* @param {Boolean} options.sparse Optional, allow a sparse index (we can have documents for which fieldName is undefined) (default: false)
*/
function Index (options) {
this.fieldName = options.fieldName;
this.datastore = options.datastore;
this.unique = options.unique || false;
this.sparse = options.unique || false;
if (this.sparse) { this.fieldUndefined = []; } // Will store all elements for which the indexed field is not defined
}
// Interface
module.exports = Index;