UNPKG

aerospike

Version:
60 lines (55 loc) 1.78 kB
// ***************************************************************************** // Copyright 2013-2024 Aerospike, Inc. // // Licensed under the Apache License, Version 2.0 (the "License") // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // ***************************************************************************** 'use strict' import * as Aerospike from '../../lib/aerospike.js'; const Key = Aerospike.Key import * as valgen from './value.ts'; // // Returns a generator for bytes keys. // export function bytes (namespace: any, set: any, options?: any) { const bgen = valgen.bytes(options) return function () { return new Key(namespace, set, bgen()) } } // // Returns a generator for string keys. // export function string (namespace: any, set: any, options?: any) { const sgen = valgen.string(options) return function () { return new Key(namespace, set, sgen()) } } // // Returns a generator for integer keys. // export function integer (namespace: any, set: any, options?: any) { const igen = valgen.integer(options) return function () { return new Key(namespace, set, igen()) } } export function range (keygen: any, end: number, start?: number) { start = start || 0 end = end || start + 1 const a: Array<Aerospike.Key> = [] for (let i = 0; i < end; i++) { a.push(keygen()) } return a }