better-lock 3.0.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +12 -3
  2. package/dist/better_lock.d.ts +13 -7
  3. package/dist/better_lock.js +80 -23
  4. package/dist/better_lock.js.map +1 -1
  5. package/dist/errors.d.ts +1 -0
  6. package/dist/errors.js +7 -1
  7. package/dist/errors.js.map +1 -1
  8. package/dist/options.d.ts +12 -0
  9. package/dist/types.d.ts +4 -0
  10. package/docs/assets/search.js +1 -1
  11. package/docs/classes/BetterLockError.html +3 -3
  12. package/docs/classes/BetterLockExecutionTimeoutError.html +6 -6
  13. package/docs/classes/BetterLockInternalError.html +3 -3
  14. package/docs/classes/BetterLockInvalidArgumentError.html +4 -4
  15. package/docs/classes/BetterLockJobAbortedError.html +5 -5
  16. package/docs/classes/BetterLockQueueOverflowError.html +8 -8
  17. package/docs/classes/BetterLockWaitTimeoutError.html +6 -6
  18. package/docs/classes/_internal_.BetterLock.html +189 -7
  19. package/docs/classes/_internal_.KeyQueue.html +4 -4
  20. package/docs/classes/_internal_.LockJob.html +13 -13
  21. package/docs/functions/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.isAcquisitionFailureError.html +62 -0
  22. package/docs/index.html +13 -2
  23. package/docs/interfaces/BetterLockJobOptions.html +27 -4
  24. package/docs/interfaces/BetterLockOptions.html +26 -8
  25. package/docs/modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html +6 -1
  26. package/docs/types/BetterLockErrorName.html +1 -1
  27. package/docs/types/BetterLockExecutor.html +1 -1
  28. package/docs/types/BetterLockKey.html +1 -1
  29. package/docs/types/BetterLockQueueEjectionStrategy.html +1 -1
  30. package/docs/types/_internal_.ICallback.html +1 -1
  31. package/docs/types/_internal_.ICallbackExecutor.html +1 -1
  32. package/docs/types/_internal_.IErrorExports.html +1 -1
  33. package/docs/types/_internal_.IPromiseExecutor.html +1 -1
  34. package/docs/variables/BetterLock.html +1 -1
  35. package/package.json +1 -1
  36. package/spec/better_lock.spec.ts +160 -0
  37. package/src/better_lock.ts +115 -31
  38. package/src/errors.ts +14 -1
  39. package/src/options.ts +15 -0
  40. package/src/types.ts +5 -0
package/README.md CHANGED
@@ -149,6 +149,10 @@ You can see a bunch more usage examples in the spec file, [here](spec/better_loc
149
149
  - `callback`: Optional callback that will be called once executor exits. Results from executor (resolved/rejected value or arguments given to `done`) will be passed along. This can be used in addition to the returned promise.
150
150
  - `jobOptions`: An object that should match interface `BetterLockJobOptions`. A subset of main options that will serve as overrides for this particular job (for example, timeout settings).
151
151
 
152
+ - `BetterLock.acquireOr([key], failureResult, executor, [callback], [jobOptions])`
153
+ The same as acquire, except if the lock can't be acquired (the executor never gets called), instead of throwing
154
+ an error, the lock will resolve/callback with the provided failureResult value (for example, a `null`).
155
+
152
156
  - `BetterLock.canAcquire([key])`
153
157
  Returns true if given key can be acquired.
154
158
 
@@ -184,9 +188,6 @@ Most commonly used options are:
184
188
  - `queue_size`
185
189
  Max queue size for waiting jobs.
186
190
 
187
- - `queue_ejection_strategy`
188
- Which job to eject from the queue when it's full. Default is `newest`.
189
-
190
191
  Default options are a static member `DEFAULT_OPTIONS` on the `BetterLock` class. During runtime, you can change the defaults like this:
191
192
 
192
193
  ```javascript
@@ -214,6 +215,14 @@ The library is not a good fit if:
214
215
 
215
216
  ### Change log
216
217
 
218
+ #### **3.2.0** (_2024/06/21_)
219
+
220
+ Add new api `canAcquire`. A helper for "best effort" lock acquisition.
221
+
222
+ #### **3.1.0** (_2024/06/21_)
223
+
224
+ Add option `lock_condition`.
225
+
217
226
  #### **3.0.0** (_2024/04/18_)
218
227
 
219
228
  Add option `queue_ejection_strategy`.
@@ -1,5 +1,5 @@
1
1
  import { ILockJobOptions, IOptions } from './options';
2
- import { ICallback, ICallbackExecutor, ILockKey, IPromiseExecutor } from './types';
2
+ import { ICallback, ICallbackExecutor, ILockKey, IPromiseExecutor, IValidResult } from './types';
3
3
  /**
4
4
  * Main better lock class.
5
5
  */
@@ -24,12 +24,18 @@ export declare class BetterLock {
24
24
  */
25
25
  canAcquire(key?: string): boolean;
26
26
  private normalizeAndValidateKey;
27
- acquire<TResult>(executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
28
- acquire<TResult>(executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
29
- acquire<TResult>(executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
30
- acquire<TResult>(key: ILockKey | Array<ILockKey>, executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
31
- acquire<TResult>(key: ILockKey | Array<ILockKey>, executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
32
- acquire<TResult>(key: ILockKey | Array<ILockKey>, executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
27
+ acquire<TResult extends IValidResult>(executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
28
+ acquire<TResult extends IValidResult>(executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
29
+ acquire<TResult extends IValidResult>(executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
30
+ acquire<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
31
+ acquire<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
32
+ acquire<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
33
+ acquireOr<TResult extends IValidResult>(failureResult: TResult, executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
34
+ acquireOr<TResult extends IValidResult>(failureResult: TResult, executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
35
+ acquireOr<TResult extends IValidResult>(failureResult: TResult, executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
36
+ acquireOr<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, failureResult: TResult, executor: IPromiseExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
37
+ acquireOr<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, failureResult: TResult, executor: ICallbackExecutor<TResult>, jobOptions?: ILockJobOptions): Promise<TResult>;
38
+ acquireOr<TResult extends IValidResult>(key: ILockKey | Array<ILockKey>, failureResult: TResult, executor: ICallbackExecutor<TResult>, callback: ICallback<TResult>, jobOptions?: ILockJobOptions): void;
33
39
  /**
34
40
  * Update state of given list of queues.
35
41
  */
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.BetterLock = void 0;
4
13
  var errors_1 = require("./errors");
@@ -69,30 +78,13 @@ var BetterLock = /** @class */ (function () {
69
78
  */
70
79
  BetterLock.prototype.acquire = function (key, executor, callback, jobOptions) {
71
80
  var _this = this;
72
- if (tools.isFunction(key) || tools.isObject(key)) {
81
+ if (tools.isFunction(key)) {
73
82
  // Presume we weren't given a key (first form)
74
83
  jobOptions = callback;
75
84
  callback = executor;
76
85
  executor = key;
77
86
  key = null;
78
87
  }
79
- // Repackage "key" into an array of keys
80
- var keys = [];
81
- if (Array.isArray(key)) {
82
- var arrayOfKeys = key;
83
- // Make sure we don't add duplicates
84
- var seenKeys = new Set();
85
- for (var i = 0; i < arrayOfKeys.length; i++) {
86
- var normalizedKey = this.normalizeAndValidateKey(arrayOfKeys[i]);
87
- if (!seenKeys.has(normalizedKey)) {
88
- keys.push(normalizedKey);
89
- seenKeys.add(normalizedKey);
90
- }
91
- }
92
- }
93
- else {
94
- keys.push(this.normalizeAndValidateKey(key));
95
- }
96
88
  // Create callback wrapper for promise interface
97
89
  if (!tools.isFunction(callback)) {
98
90
  if (jobOptions === undefined) {
@@ -100,6 +92,31 @@ var BetterLock = /** @class */ (function () {
100
92
  }
101
93
  callback = tools.callbackWithPromise();
102
94
  }
95
+ // Prepare job options
96
+ var effectiveJobOptions = jobOptions
97
+ ? tools.assign({}, [this.options, jobOptions])
98
+ : // No need to create new object since these will be read-only and are subset of global options
99
+ this.options;
100
+ // Repackage "key" into an array of keys, but only if lock_condition allows it.
101
+ // Otherwise, it stays an array and gets executed immediately.
102
+ var keys = [];
103
+ if (!effectiveJobOptions.lock_condition || effectiveJobOptions.lock_condition(key)) {
104
+ if (Array.isArray(key)) {
105
+ var arrayOfKeys = key;
106
+ // Make sure we don't add duplicates
107
+ var seenKeys = new Set();
108
+ for (var i = 0; i < arrayOfKeys.length; i++) {
109
+ var normalizedKey = this.normalizeAndValidateKey(arrayOfKeys[i]);
110
+ if (!seenKeys.has(normalizedKey)) {
111
+ keys.push(normalizedKey);
112
+ seenKeys.add(normalizedKey);
113
+ }
114
+ }
115
+ }
116
+ else {
117
+ keys.push(this.normalizeAndValidateKey(key));
118
+ }
119
+ }
103
120
  // Validate other options
104
121
  if (!tools.isFunction(executor)) {
105
122
  throw new errors_1.BetterLockInvalidArgumentError(this.options.name, 'executor', 'a function', executor);
@@ -107,11 +124,6 @@ var BetterLock = /** @class */ (function () {
107
124
  if (!tools.isFunction(callback)) {
108
125
  throw new errors_1.BetterLockInvalidArgumentError(this.options.name, 'callback', 'a function', callback);
109
126
  }
110
- // Prepare job options
111
- var effectiveJobOptions = jobOptions
112
- ? tools.assign({}, [this.options, jobOptions])
113
- : // No need to create new object since these will be read-only and are subset of global options
114
- this.options;
115
127
  var job = new internals_1.LockJob(keys, executor, callback, effectiveJobOptions);
116
128
  // Set incoming stack
117
129
  if (effectiveJobOptions.extend_stack_traces) {
@@ -143,6 +155,51 @@ var BetterLock = /** @class */ (function () {
143
155
  }
144
156
  return callback.promise;
145
157
  };
158
+ /**
159
+ * The same as acquire, except if the lock can't be acquired (the executor never gets called), instead of throwing
160
+ * an error, the lock will resolve/callback with the provided failureResult value (for example, a `null`).
161
+ * @param key Named key or array of keys for this particular call. Calls with different keys will be run in parallel. Not required.
162
+ * @param failureResult The value to return if the executor never get called. This happens instead of rejecting.
163
+ * @param executor Function that will run inside the lock. Required.
164
+ * @param callback Function to be called after the executor finishes, or there is an execution timeout. Leave out to use promises.
165
+ * @param jobOptions Options to be applied on this job only
166
+ */
167
+ BetterLock.prototype.acquireOr = function (key, failureResult, executor, callback, jobOptions) {
168
+ if (tools.isFunction(failureResult)) {
169
+ // There is no key given. Reshuffle.
170
+ jobOptions = callback;
171
+ callback = executor;
172
+ executor = failureResult;
173
+ failureResult = key;
174
+ key = null;
175
+ }
176
+ if (tools.isFunction(callback)) {
177
+ var originalCallback_1 = callback;
178
+ callback = function (err) {
179
+ var results = [];
180
+ for (var _i = 1; _i < arguments.length; _i++) {
181
+ results[_i - 1] = arguments[_i];
182
+ }
183
+ if ((0, errors_1.isAcquisitionFailureError)(err)) {
184
+ originalCallback_1(null, failureResult);
185
+ }
186
+ else {
187
+ originalCallback_1.apply(void 0, __spreadArray([err], results, false));
188
+ }
189
+ };
190
+ }
191
+ // noinspection JSVoidFunctionReturnValueUsed
192
+ var promiseResult = this.acquire(key, executor, callback, jobOptions);
193
+ if (typeof promiseResult !== 'undefined') {
194
+ promiseResult = promiseResult.catch(function (err) {
195
+ if ((0, errors_1.isAcquisitionFailureError)(err)) {
196
+ return failureResult;
197
+ }
198
+ throw err;
199
+ });
200
+ }
201
+ return promiseResult;
202
+ };
146
203
  /**
147
204
  * Update state of given list of queues.
148
205
  */
@@ -1 +1 @@
1
- {"version":3,"file":"better_lock.js","sourceRoot":"","sources":["../src/better_lock.ts"],"names":[],"mappings":";;;AAAA,mCAOkB;AAClB,yCAAgD;AAEhD,+BAAiC;AAGjC;;GAEG;AACH;IAaE;;OAEG;IACH,oBAAY,OAAkB;QAC5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,6BAAQ,GAAhB,UAAiB,GAAa;QAC5B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACrC,GAAG,GAAG,oBAAQ,CAAC,iBAAiB,CAAC;SAClC;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,oBAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;SACtD;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACI,+BAAU,GAAjB,UAAkB,GAAY;QAC5B,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7C,CAAC;IAEO,4CAAuB,GAA/B,UAAgC,GAAa;QAC3C,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,OAAO,IAAI,CAAC;SACb;QACD,IAAI,GAAG,KAAK,IAAI,EAAE;YAChB,OAAO,IAAI,CAAC;SACb;QACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACvB,OAAO,GAAG,CAAC;SACZ;QACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;SACpB;QACD,oBAAoB;QACpB,MAAM,IAAI,uCAA8B,CACtC,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,KAAK,EACL,4DAA4D,EAC5D,GAAG,CACJ,CAAC;IACJ,CAAC;IA+BD;;;;;;;;;;;;;;OAcG;IACI,4BAAO,GAAd,UAAe,GAAG,EAAE,QAAS,EAAE,QAAS,EAAE,UAAW;QAArD,iBA+FC;QA9FC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAChD,8CAA8C;YAC9C,UAAU,GAAG,QAAQ,CAAC;YACtB,QAAQ,GAAG,QAAQ,CAAC;YACpB,QAAQ,GAAG,GAAG,CAAC;YACf,GAAG,GAAG,IAAI,CAAC;SACZ;QAED,wCAAwC;QACxC,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,IAAM,WAAW,GAAG,GAAG,CAAC;YACxB,oCAAoC;YACpC,IAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,IAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;oBAChC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBACzB,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;iBAC7B;aACF;SACF;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;SAC9C;QAED,gDAAgD;QAChD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC/B,IAAI,UAAU,KAAK,SAAS,EAAE;gBAC5B,UAAU,GAAG,QAAQ,CAAC;aACvB;YAED,QAAQ,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC;SACxC;QAED,yBAAyB;QACzB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,IAAI,uCAA8B,CACtC,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,UAAU,EACV,YAAY,EACZ,QAAQ,CACT,CAAC;SACH;QACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,IAAI,uCAA8B,CACtC,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,UAAU,EACV,YAAY,EACZ,QAAQ,CACT,CAAC;SACH;QAED,sBAAsB;QACtB,IAAM,mBAAmB,GAAG,UAAU;YACpC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC9C,CAAC,CAAC,8FAA8F;gBAC9F,IAAI,CAAC,OAAO,CAAC;QAEjB,IAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAEvE,qBAAqB;QACrB,IAAI,mBAAmB,CAAC,mBAAmB,EAAE;YAC3C,IAAM,OAAO,GAAG,IAAI,KAAK,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/C,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC;SACpC;QAED,4BAA4B;QAC5B,IAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5B;QAED,+BAA+B;QAC/B,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC5C,GAAG,CAAC,eAAe,GAAG,UAAU,CAAC,cAAM,OAAA,KAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAvB,CAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAE1F,iFAAiF;SAClF;QAED,IAAI,CAAC,GAAG,CAAC,mBAAY,GAAG,CAAE,CAAC,CAAC;QAE5B,8FAA8F;QAC9F,yDAAyD;QACzD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;SAC7B;aAAM;YACL,6FAA6F;YAC7F,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACtB;QAED,OAAQ,QAAgB,CAAC,OAAO,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,2BAAM,GAAd,UAAe,MAAkB;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAExB,6CAA6C;YAC7C,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;gBACtC,IAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;gBACnB,GAAG,CAAC,aAAa,EAAE,CAAC;gBAEpB,IAAI,GAAG,CAAC,aAAa,IAAI,CAAC,EAAE;oBAC1B,gCAAgC;oBAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;iBACtB;aACF;YAED,6BAA6B;YAC7B,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC1F,IAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,IAAI,QAAQ,CAAC;gBAElE,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAChF,IAAI,CAAC,GAAG,CACN,UAAG,KAAK,CAAC,QAAQ,EAAE,oCAA0B,QAAQ,mBAAS,SAAS,qBAAkB,CAC1F,CAAC;gBAEF,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;oBACrB,IAAI,qCAA4B,CAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,EACjB,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,IAAI,CAAC,MAAM,EACjB,SAAS,EACT,QAAQ,CACT;iBACF,CAAC,CAAC;aACJ;SACF;IACH,CAAC;IAEO,+BAAU,GAAlB,UAAmB,GAAiB;QAApC,iBAwEC;QAvEC,IAAI,CAAC,GAAG,CAAC,oBAAa,GAAG,CAAE,CAAC,CAAC;QAE7B,qBAAqB;QACrB,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAClC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC;QAE3B,iGAAiG;QACjG,qDAAqD;QAErD,YAAY,CAAC;YACX,kDAAkD;YAClD,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,QAAQ,EAAE;gBACnC,OAAO;aACR;YAED,mDAAmD;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAM,KAAK,GAAG,KAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;oBACxB,2BAA2B;oBAC3B,OAAO,KAAI,CAAC,MAAM,CAAC,GAAG,EAAE;wBACtB,IAAI,gCAAuB,CACzB,KAAI,CAAC,OAAO,CAAC,IAAI,EACjB,yCAAkC,KAAK,CAAC,GAAG,CAAE,CAC9C;qBACF,CAAC,CAAC;iBACJ;aACF;YAED,uCAAuC;YACvC,GAAG,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAE7B,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;gBACjD,GAAG,CAAC,oBAAoB,GAAG,UAAU,CACnC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAA5B,CAA4B,EAClC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAC9B,CAAC;aACH;YAED,IAAM,QAAQ,GAAG;gBAAC,cAAO;qBAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;oBAAP,yBAAO;;gBACvB,KAAI,CAAC,GAAG,CAAC,0BAAmB,GAAG,CAAE,CAAC,CAAC;gBAEnC,KAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACzB,CAAC,CAAC;YAEF,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,qBAAqB;gBACrB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO;aACR;YAED,oBAAoB;YACpB,IAAI,cAAc,CAAC;YACnB,IAAI;gBACF,cAAc,GAAI,GAAG,CAAC,QAAgB,EAAE,CAAC;aAC1C;YAAC,OAAO,GAAG,EAAE;gBACZ,sCAAsC;gBACtC,QAAQ,CAAC,GAAG,CAAC,CAAC;aACf;YAED,mBAAmB;YACnB,IAAI,KAAI,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE;gBAC/C,cAAc,CAAC,IAAI,CACjB,UAAA,GAAG,IAAI,OAAA,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,EAAnB,CAAmB,EAC1B,UAAA,GAAG,IAAI,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CACrB,CAAC;aACH;iBAAM;gBACL,6DAA6D;gBAC7D,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,kCAAa,GAArB,UAAsB,GAAiB;QACrC,IAAI,CAAC,GAAG,CACN,UAAG,GAAG,uDACJ,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,OAC9C,CACL,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,mCAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,uCAAkB,GAA1B,UAA2B,GAAiB;QAC1C,IAAI,CAAC,GAAG,CACN,UAAG,GAAG,gDACJ,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,OAC9C,CACL,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,wCAA+B,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC;IAEO,2BAAM,GAAd,UAAe,GAAiB,EAAE,YAAmB;QAArD,iBA8CC;QA7CC,IAAI,GAAG,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,GAAG,CACN,mBAAY,GAAG,4DAAkD,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,sCAA4B,YAAY,CAAE,CACtI,CAAC;YACF,OAAO;SACR;QAED,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAClC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC;QAE3B,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACvC,GAAG,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAEhC,GAAG,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAE1B,IAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAE3B,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;gBACxB,0CAA0C;gBAC1C,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;aACrB;iBAAM;gBACL,iDAAiD;gBACjD,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,KAAK,IAAI,CAAC,EAAE;oBACd,oBAAoB;oBACpB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;iBAC7B;qBAAM;oBACL,oDAAoD;oBACpD,IAAI,CAAC,GAAG,CACN,mBAAY,GAAG,uEAA6D,KAAK,CAAC,GAAG,CAAE,CACxF,CAAC;iBACH;aACF;SACF;QAED,oBAAoB;QACpB,IAAI;YACF,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;SACxC;gBAAS;YACR,4CAA4C;YAC5C,YAAY,CAAC,cAAM,OAAA,KAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAA3B,CAA2B,CAAC,CAAC;SACjD;IACH,CAAC;IAED;;;;;OAKG;IACI,0BAAK,GAAZ,UAAa,GAAc;QAA3B,iBASC;QARC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,UAAA,GAAG;YAC5B,KAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,kCAAyB,CAAC,KAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;YAC7C,sFAAsF;YACtF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,kCAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SAC7F;IACH,CAAC;IAED;;;OAGG;IACI,6BAAQ,GAAf;QACE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,IAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;YAC7B,qCAAqC;YACrC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACjB;IACH,CAAC;IAhaD;;OAEG;IACI,0BAAe,GAAa;QACjC,mBAAmB,EAAE,IAAI;QACzB,cAAc,EAAE,UAAA,CAAC,IAAI,OAAA,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,EAAjC,CAAiC;KACvD,CAAC;IA2ZJ,iBAAC;CAAA,AAlaD,IAkaC;AAlaY,gCAAU"}
1
+ {"version":3,"file":"better_lock.js","sourceRoot":"","sources":["../src/better_lock.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -44,3 +44,4 @@ export declare class BetterLockJobAbortedError extends BetterLockError {
44
44
  keys: string[];
45
45
  constructor(lockName: any, job: any);
46
46
  }
47
+ export declare function isAcquisitionFailureError(err: any): boolean;
package/dist/errors.js CHANGED
@@ -15,7 +15,7 @@ var __extends = (this && this.__extends) || (function () {
15
15
  };
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.BetterLockJobAbortedError = exports.BetterLockQueueOverflowError = exports.BetterLockExecutionTimeoutError = exports.BetterLockWaitTimeoutError = exports.BetterLockInvalidArgumentError = exports.BetterLockInternalError = exports.BetterLockError = void 0;
18
+ exports.isAcquisitionFailureError = exports.BetterLockJobAbortedError = exports.BetterLockQueueOverflowError = exports.BetterLockExecutionTimeoutError = exports.BetterLockWaitTimeoutError = exports.BetterLockInvalidArgumentError = exports.BetterLockInternalError = exports.BetterLockError = void 0;
19
19
  var internals_1 = require("./internals");
20
20
  var BetterLockError = /** @class */ (function (_super) {
21
21
  __extends(BetterLockError, _super);
@@ -127,4 +127,10 @@ var BetterLockJobAbortedError = /** @class */ (function (_super) {
127
127
  return BetterLockJobAbortedError;
128
128
  }(BetterLockError));
129
129
  exports.BetterLockJobAbortedError = BetterLockJobAbortedError;
130
+ function isAcquisitionFailureError(err) {
131
+ return ((err && err instanceof BetterLockQueueOverflowError) ||
132
+ err instanceof BetterLockWaitTimeoutError ||
133
+ err instanceof BetterLockJobAbortedError);
134
+ }
135
+ exports.isAcquisitionFailureError = isAcquisitionFailureError;
130
136
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/options.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { ILockKey } from './types';
1
2
  /**
2
3
  * Options that apply on LockJob
3
4
  */
@@ -14,6 +15,12 @@ export interface ILockJobOptions {
14
15
  * In any error produced by BetterLock, extend the stack trace to include incoming trace. Overrides BetterLockOptions value.
15
16
  */
16
17
  extend_stack_traces?: boolean;
18
+ /**
19
+ * Before acquiring lock, call this function with the given key. If condition is rejected, the executor is immediately called, without locking.
20
+ * This can be used to more conveniently opt out of locking, without duplicating or extracting the executor.
21
+ * Overrides BetterLockOptions value.
22
+ */
23
+ lock_condition?: (key: ILockKey | Array<ILockKey>) => boolean;
17
24
  }
18
25
  export declare type IQueueEjectionStrategy = 'oldest' | 'newest';
19
26
  /**
@@ -37,6 +44,11 @@ export interface IOptions extends ILockJobOptions {
37
44
  * If queue is full, which job to eject. Defaults to 'oldest'.
38
45
  */
39
46
  queue_ejection_strategy?: IQueueEjectionStrategy;
47
+ /**
48
+ * Before acquiring lock, call this function with the given key. If condition is rejected, the executor is immediately called, without locking.
49
+ * This can be used to more conveniently opt out of locking, without duplicating or extracting the executor.
50
+ */
51
+ lock_condition?: (key: ILockKey | Array<ILockKey>) => boolean;
40
52
  /**
41
53
  * Lock name. This will be written in all logs and error messages, to help you distinguish between different locks
42
54
  */
package/dist/types.d.ts CHANGED
@@ -20,4 +20,8 @@ export declare type IExecutor<TResult> = ICallbackExecutor<TResult> | IPromiseEx
20
20
  * Key types that can be used for a lock.
21
21
  */
22
22
  export declare type ILockKey = string | number | null | undefined;
23
+ /**
24
+ * Valid results are anything except functions
25
+ */
26
+ export declare type IValidResult = Exclude<any, (...args: any[]) => any>;
23
27
  export {};
@@ -1 +1 @@
1
- window.searchData = JSON.parse("{\"kinds\":{\"4\":\"Namespace\",\"32\":\"Variable\",\"128\":\"Class\",\"256\":\"Interface\",\"512\":\"Constructor\",\"1024\":\"Property\",\"2048\":\"Method\",\"65536\":\"Type literal\",\"4194304\":\"Type alias\",\"8388608\":\"Reference\"},\"rows\":[{\"id\":0,\"kind\":32,\"name\":\"BetterLock\",\"url\":\"variables/BetterLock.html\",\"classes\":\"tsd-kind-variable\"},{\"id\":1,\"kind\":8388608,\"name\":\"default\",\"url\":\"modules.html#default\",\"classes\":\"tsd-kind-reference\"},{\"id\":2,\"kind\":256,\"name\":\"BetterLockOptions\",\"url\":\"interfaces/BetterLockOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"id\":3,\"kind\":1024,\"name\":\"wait_timeout\",\"url\":\"interfaces/BetterLockOptions.html#wait_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":4,\"kind\":1024,\"name\":\"execution_timeout\",\"url\":\"interfaces/BetterLockOptions.html#execution_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":5,\"kind\":1024,\"name\":\"queue_size\",\"url\":\"interfaces/BetterLockOptions.html#queue_size\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":6,\"kind\":1024,\"name\":\"queue_ejection_strategy\",\"url\":\"interfaces/BetterLockOptions.html#queue_ejection_strategy\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":7,\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/BetterLockOptions.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":8,\"kind\":1024,\"name\":\"log\",\"url\":\"interfaces/BetterLockOptions.html#log\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":9,\"kind\":1024,\"name\":\"extend_stack_traces\",\"url\":\"interfaces/BetterLockOptions.html#extend_stack_traces\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":10,\"kind\":2048,\"name\":\"promise_tester\",\"url\":\"interfaces/BetterLockOptions.html#promise_tester\",\"classes\":\"tsd-kind-method tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":11,\"kind\":4194304,\"name\":\"BetterLockQueueEjectionStrategy\",\"url\":\"types/BetterLockQueueEjectionStrategy.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":12,\"kind\":256,\"name\":\"BetterLockJobOptions\",\"url\":\"interfaces/BetterLockJobOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"id\":13,\"kind\":1024,\"name\":\"wait_timeout\",\"url\":\"interfaces/BetterLockJobOptions.html#wait_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":14,\"kind\":1024,\"name\":\"execution_timeout\",\"url\":\"interfaces/BetterLockJobOptions.html#execution_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":15,\"kind\":1024,\"name\":\"extend_stack_traces\",\"url\":\"interfaces/BetterLockJobOptions.html#extend_stack_traces\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":16,\"kind\":4194304,\"name\":\"BetterLockExecutor\",\"url\":\"types/BetterLockExecutor.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":17,\"kind\":4194304,\"name\":\"BetterLockKey\",\"url\":\"types/BetterLockKey.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":18,\"kind\":4194304,\"name\":\"BetterLockErrorName\",\"url\":\"types/BetterLockErrorName.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":19,\"kind\":128,\"name\":\"BetterLockError\",\"url\":\"classes/BetterLockError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":20,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":21,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":22,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":23,\"kind\":128,\"name\":\"BetterLockExecutionTimeoutError\",\"url\":\"classes/BetterLockExecutionTimeoutError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":24,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":25,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":26,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":27,\"kind\":1024,\"name\":\"executed_at\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#executed_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":28,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":29,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":30,\"kind\":128,\"name\":\"BetterLockInternalError\",\"url\":\"classes/BetterLockInternalError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":31,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockInternalError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockInternalError\"},{\"id\":32,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockInternalError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInternalError\"},{\"id\":33,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockInternalError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInternalError\"},{\"id\":34,\"kind\":128,\"name\":\"BetterLockInvalidArgumentError\",\"url\":\"classes/BetterLockInvalidArgumentError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":35,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockInvalidArgumentError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":36,\"kind\":1024,\"name\":\"argument\",\"url\":\"classes/BetterLockInvalidArgumentError.html#argument\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":37,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockInvalidArgumentError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":38,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockInvalidArgumentError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":39,\"kind\":128,\"name\":\"BetterLockJobAbortedError\",\"url\":\"classes/BetterLockJobAbortedError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":40,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockJobAbortedError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":41,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockJobAbortedError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":42,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockJobAbortedError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":43,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockJobAbortedError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":44,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockJobAbortedError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":45,\"kind\":128,\"name\":\"BetterLockQueueOverflowError\",\"url\":\"classes/BetterLockQueueOverflowError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":46,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockQueueOverflowError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":47,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockQueueOverflowError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":48,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockQueueOverflowError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":49,\"kind\":1024,\"name\":\"job_count\",\"url\":\"classes/BetterLockQueueOverflowError.html#job_count\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":50,\"kind\":1024,\"name\":\"kicked_out_job_id\",\"url\":\"classes/BetterLockQueueOverflowError.html#kicked_out_job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":51,\"kind\":1024,\"name\":\"strategy\",\"url\":\"classes/BetterLockQueueOverflowError.html#strategy\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":52,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockQueueOverflowError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":53,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockQueueOverflowError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":54,\"kind\":128,\"name\":\"BetterLockWaitTimeoutError\",\"url\":\"classes/BetterLockWaitTimeoutError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":55,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockWaitTimeoutError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":56,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockWaitTimeoutError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":57,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockWaitTimeoutError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":58,\"kind\":1024,\"name\":\"enqueued_at\",\"url\":\"classes/BetterLockWaitTimeoutError.html#enqueued_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":59,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockWaitTimeoutError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":60,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockWaitTimeoutError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":61,\"kind\":4,\"name\":\"<internal>\",\"url\":\"modules/_internal_.html\",\"classes\":\"tsd-kind-namespace\"},{\"id\":62,\"kind\":128,\"name\":\"BetterLock\",\"url\":\"classes/_internal_.BetterLock.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":63,\"kind\":1024,\"name\":\"DEFAULT_OPTIONS\",\"url\":\"classes/_internal_.BetterLock.html#DEFAULT_OPTIONS\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":64,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.BetterLock.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":65,\"kind\":2048,\"name\":\"canAcquire\",\"url\":\"classes/_internal_.BetterLock.html#canAcquire\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":66,\"kind\":2048,\"name\":\"acquire\",\"url\":\"classes/_internal_.BetterLock.html#acquire\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":67,\"kind\":2048,\"name\":\"abort\",\"url\":\"classes/_internal_.BetterLock.html#abort\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":68,\"kind\":2048,\"name\":\"abortAll\",\"url\":\"classes/_internal_.BetterLock.html#abortAll\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":69,\"kind\":4194304,\"name\":\"ICallbackExecutor\",\"url\":\"types/_internal_.ICallbackExecutor.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":70,\"kind\":65536,\"name\":\"__type\",\"url\":\"types/_internal_.ICallbackExecutor.html#__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-type-alias\",\"parent\":\"<internal>.ICallbackExecutor\"},{\"id\":71,\"kind\":4194304,\"name\":\"IPromiseExecutor\",\"url\":\"types/_internal_.IPromiseExecutor.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":72,\"kind\":65536,\"name\":\"__type\",\"url\":\"types/_internal_.IPromiseExecutor.html#__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-type-alias\",\"parent\":\"<internal>.IPromiseExecutor\"},{\"id\":73,\"kind\":4194304,\"name\":\"IErrorExports\",\"url\":\"types/_internal_.IErrorExports.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":74,\"kind\":128,\"name\":\"LockJob\",\"url\":\"classes/_internal_.LockJob.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":75,\"kind\":1024,\"name\":\"_lastId\",\"url\":\"classes/_internal_.LockJob.html#_lastId\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":76,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.LockJob.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":77,\"kind\":1024,\"name\":\"id\",\"url\":\"classes/_internal_.LockJob.html#id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":78,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/_internal_.LockJob.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":79,\"kind\":1024,\"name\":\"waiting_count\",\"url\":\"classes/_internal_.LockJob.html#waiting_count\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":80,\"kind\":1024,\"name\":\"executor\",\"url\":\"classes/_internal_.LockJob.html#executor\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":81,\"kind\":1024,\"name\":\"callback\",\"url\":\"classes/_internal_.LockJob.html#callback\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":82,\"kind\":1024,\"name\":\"enqueued_at\",\"url\":\"classes/_internal_.LockJob.html#enqueued_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":83,\"kind\":1024,\"name\":\"executed_at\",\"url\":\"classes/_internal_.LockJob.html#executed_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":84,\"kind\":1024,\"name\":\"ended_at\",\"url\":\"classes/_internal_.LockJob.html#ended_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":85,\"kind\":1024,\"name\":\"options\",\"url\":\"classes/_internal_.LockJob.html#options\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":86,\"kind\":1024,\"name\":\"wait_timeout_id\",\"url\":\"classes/_internal_.LockJob.html#wait_timeout_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":87,\"kind\":1024,\"name\":\"execution_timeout_id\",\"url\":\"classes/_internal_.LockJob.html#execution_timeout_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":88,\"kind\":1024,\"name\":\"incoming_stack\",\"url\":\"classes/_internal_.LockJob.html#incoming_stack\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":89,\"kind\":2048,\"name\":\"toString\",\"url\":\"classes/_internal_.LockJob.html#toString\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":90,\"kind\":4,\"name\":\"\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html\",\"classes\":\"tsd-kind-namespace tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":91,\"kind\":8388608,\"name\":\"BetterLockError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":92,\"kind\":8388608,\"name\":\"BetterLockInternalError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockInternalError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":93,\"kind\":8388608,\"name\":\"BetterLockInvalidArgumentError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockInvalidArgumentError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":94,\"kind\":8388608,\"name\":\"BetterLockWaitTimeoutError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockWaitTimeoutError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":95,\"kind\":8388608,\"name\":\"BetterLockExecutionTimeoutError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockExecutionTimeoutError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":96,\"kind\":8388608,\"name\":\"BetterLockQueueOverflowError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockQueueOverflowError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":97,\"kind\":8388608,\"name\":\"BetterLockJobAbortedError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockJobAbortedError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":98,\"kind\":4194304,\"name\":\"ICallback\",\"url\":\"types/_internal_.ICallback.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":99,\"kind\":128,\"name\":\"KeyQueue\",\"url\":\"classes/_internal_.KeyQueue.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":100,\"kind\":1024,\"name\":\"DEFAULT_QUEUE_KEY\",\"url\":\"classes/_internal_.KeyQueue.html#DEFAULT_QUEUE_KEY\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":101,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.KeyQueue.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":102,\"kind\":1024,\"name\":\"key\",\"url\":\"classes/_internal_.KeyQueue.html#key\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":103,\"kind\":1024,\"name\":\"jobs\",\"url\":\"classes/_internal_.KeyQueue.html#jobs\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":104,\"kind\":1024,\"name\":\"active\",\"url\":\"classes/_internal_.KeyQueue.html#active\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":105,\"kind\":2048,\"name\":\"toString\",\"url\":\"classes/_internal_.KeyQueue.html#toString\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"parent\"],\"fieldVectors\":[[\"name/0\",[0,37.71]],[\"parent/0\",[]],[\"name/1\",[1,42.837]],[\"parent/1\",[]],[\"name/2\",[2,24.308]],[\"parent/2\",[]],[\"name/3\",[3,37.71]],[\"parent/3\",[2,2.333]],[\"name/4\",[4,37.71]],[\"parent/4\",[2,2.333]],[\"name/5\",[5,42.837]],[\"parent/5\",[2,2.333]],[\"name/6\",[6,42.837]],[\"parent/6\",[2,2.333]],[\"name/7\",[7,25.425]],[\"parent/7\",[2,2.333]],[\"name/8\",[8,42.837]],[\"parent/8\",[2,2.333]],[\"name/9\",[9,37.71]],[\"parent/9\",[2,2.333]],[\"name/10\",[10,42.837]],[\"parent/10\",[2,2.333]],[\"name/11\",[11,42.837]],[\"parent/11\",[]],[\"name/12\",[12,31.809]],[\"parent/12\",[]],[\"name/13\",[3,37.71]],[\"parent/13\",[12,3.053]],[\"name/14\",[4,37.71]],[\"parent/14\",[12,3.053]],[\"name/15\",[9,37.71]],[\"parent/15\",[12,3.053]],[\"name/16\",[13,42.837]],[\"parent/16\",[]],[\"name/17\",[14,42.837]],[\"parent/17\",[]],[\"name/18\",[15,42.837]],[\"parent/18\",[]],[\"name/19\",[16,29.795]],[\"parent/19\",[]],[\"name/20\",[17,23.304]],[\"parent/20\",[16,2.86]],[\"name/21\",[18,26.681]],[\"parent/21\",[16,2.86]],[\"name/22\",[7,25.425]],[\"parent/22\",[16,2.86]],[\"name/23\",[19,25.425]],[\"parent/23\",[]],[\"name/24\",[17,23.304]],[\"parent/24\",[19,2.44]],[\"name/25\",[20,31.809]],[\"parent/25\",[19,2.44]],[\"name/26\",[21,29.795]],[\"parent/26\",[19,2.44]],[\"name/27\",[22,37.71]],[\"parent/27\",[19,2.44]],[\"name/28\",[18,26.681]],[\"parent/28\",[19,2.44]],[\"name/29\",[7,25.425]],[\"parent/29\",[19,2.44]],[\"name/30\",[23,29.795]],[\"parent/30\",[]],[\"name/31\",[17,23.304]],[\"parent/31\",[23,2.86]],[\"name/32\",[18,26.681]],[\"parent/32\",[23,2.86]],[\"name/33\",[7,25.425]],[\"parent/33\",[23,2.86]],[\"name/34\",[24,28.118]],[\"parent/34\",[]],[\"name/35\",[17,23.304]],[\"parent/35\",[24,2.699]],[\"name/36\",[25,42.837]],[\"parent/36\",[24,2.699]],[\"name/37\",[18,26.681]],[\"parent/37\",[24,2.699]],[\"name/38\",[7,25.425]],[\"parent/38\",[24,2.699]],[\"name/39\",[26,26.681]],[\"parent/39\",[]],[\"name/40\",[17,23.304]],[\"parent/40\",[26,2.561]],[\"name/41\",[20,31.809]],[\"parent/41\",[26,2.561]],[\"name/42\",[21,29.795]],[\"parent/42\",[26,2.561]],[\"name/43\",[18,26.681]],[\"parent/43\",[26,2.561]],[\"name/44\",[7,25.425]],[\"parent/44\",[26,2.561]],[\"name/45\",[27,23.304]],[\"parent/45\",[]],[\"name/46\",[17,23.304]],[\"parent/46\",[27,2.237]],[\"name/47\",[20,31.809]],[\"parent/47\",[27,2.237]],[\"name/48\",[21,29.795]],[\"parent/48\",[27,2.237]],[\"name/49\",[28,42.837]],[\"parent/49\",[27,2.237]],[\"name/50\",[29,42.837]],[\"parent/50\",[27,2.237]],[\"name/51\",[30,42.837]],[\"parent/51\",[27,2.237]],[\"name/52\",[18,26.681]],[\"parent/52\",[27,2.237]],[\"name/53\",[7,25.425]],[\"parent/53\",[27,2.237]],[\"name/54\",[31,25.425]],[\"parent/54\",[]],[\"name/55\",[17,23.304]],[\"parent/55\",[31,2.44]],[\"name/56\",[20,31.809]],[\"parent/56\",[31,2.44]],[\"name/57\",[21,29.795]],[\"parent/57\",[31,2.44]],[\"name/58\",[32,37.71]],[\"parent/58\",[31,2.44]],[\"name/59\",[18,26.681]],[\"parent/59\",[31,2.44]],[\"name/60\",[7,25.425]],[\"parent/60\",[31,2.44]],[\"name/61\",[33,24.308]],[\"parent/61\",[]],[\"name/62\",[0,37.71]],[\"parent/62\",[33,2.333]],[\"name/63\",[34,42.837]],[\"parent/63\",[35,2.699]],[\"name/64\",[17,23.304]],[\"parent/64\",[35,2.699]],[\"name/65\",[36,42.837]],[\"parent/65\",[35,2.699]],[\"name/66\",[37,42.837]],[\"parent/66\",[35,2.699]],[\"name/67\",[38,42.837]],[\"parent/67\",[35,2.699]],[\"name/68\",[39,42.837]],[\"parent/68\",[35,2.699]],[\"name/69\",[40,42.837]],[\"parent/69\",[33,2.333]],[\"name/70\",[41,37.71]],[\"parent/70\",[42,4.111]],[\"name/71\",[43,42.837]],[\"parent/71\",[33,2.333]],[\"name/72\",[41,37.71]],[\"parent/72\",[44,4.111]],[\"name/73\",[45,42.837]],[\"parent/73\",[33,2.333]],[\"name/74\",[46,42.837]],[\"parent/74\",[33,2.333]],[\"name/75\",[47,42.837]],[\"parent/75\",[48,1.861]],[\"name/76\",[17,23.304]],[\"parent/76\",[48,1.861]],[\"name/77\",[49,42.837]],[\"parent/77\",[48,1.861]],[\"name/78\",[21,29.795]],[\"parent/78\",[48,1.861]],[\"name/79\",[50,42.837]],[\"parent/79\",[48,1.861]],[\"name/80\",[51,42.837]],[\"parent/80\",[48,1.861]],[\"name/81\",[52,42.837]],[\"parent/81\",[48,1.861]],[\"name/82\",[32,37.71]],[\"parent/82\",[48,1.861]],[\"name/83\",[22,37.71]],[\"parent/83\",[48,1.861]],[\"name/84\",[53,42.837]],[\"parent/84\",[48,1.861]],[\"name/85\",[54,42.837]],[\"parent/85\",[48,1.861]],[\"name/86\",[55,42.837]],[\"parent/86\",[48,1.861]],[\"name/87\",[56,42.837]],[\"parent/87\",[48,1.861]],[\"name/88\",[57,42.837]],[\"parent/88\",[48,1.861]],[\"name/89\",[58,37.71]],[\"parent/89\",[48,1.861]],[\"name/90\",[59,30.45,60,18.073]],[\"parent/90\",[33,2.333]],[\"name/91\",[16,29.795]],[\"parent/91\",[60,1.706,61,1.79]],[\"name/92\",[23,29.795]],[\"parent/92\",[60,1.706,61,1.79]],[\"name/93\",[24,28.118]],[\"parent/93\",[60,1.706,61,1.79]],[\"name/94\",[31,25.425]],[\"parent/94\",[60,1.706,61,1.79]],[\"name/95\",[19,25.425]],[\"parent/95\",[60,1.706,61,1.79]],[\"name/96\",[27,23.304]],[\"parent/96\",[60,1.706,61,1.79]],[\"name/97\",[26,26.681]],[\"parent/97\",[60,1.706,61,1.79]],[\"name/98\",[62,42.837]],[\"parent/98\",[33,2.333]],[\"name/99\",[63,42.837]],[\"parent/99\",[33,2.333]],[\"name/100\",[64,42.837]],[\"parent/100\",[65,2.699]],[\"name/101\",[17,23.304]],[\"parent/101\",[65,2.699]],[\"name/102\",[66,42.837]],[\"parent/102\",[65,2.699]],[\"name/103\",[67,42.837]],[\"parent/103\",[65,2.699]],[\"name/104\",[68,42.837]],[\"parent/104\",[65,2.699]],[\"name/105\",[58,37.71]],[\"parent/105\",[65,2.699]]],\"invertedIndex\":[[\"__type\",{\"_index\":41,\"name\":{\"70\":{},\"72\":{}},\"parent\":{}}],[\"_lastid\",{\"_index\":47,\"name\":{\"75\":{}},\"parent\":{}}],[\"abort\",{\"_index\":38,\"name\":{\"67\":{}},\"parent\":{}}],[\"abortall\",{\"_index\":39,\"name\":{\"68\":{}},\"parent\":{}}],[\"acquire\",{\"_index\":37,\"name\":{\"66\":{}},\"parent\":{}}],[\"active\",{\"_index\":68,\"name\":{\"104\":{}},\"parent\":{}}],[\"argument\",{\"_index\":25,\"name\":{\"36\":{}},\"parent\":{}}],[\"betterlock\",{\"_index\":0,\"name\":{\"0\":{},\"62\":{}},\"parent\":{}}],[\"betterlockerror\",{\"_index\":16,\"name\":{\"19\":{},\"91\":{}},\"parent\":{\"20\":{},\"21\":{},\"22\":{}}}],[\"betterlockerrorname\",{\"_index\":15,\"name\":{\"18\":{}},\"parent\":{}}],[\"betterlockexecutiontimeouterror\",{\"_index\":19,\"name\":{\"23\":{},\"95\":{}},\"parent\":{\"24\":{},\"25\":{},\"26\":{},\"27\":{},\"28\":{},\"29\":{}}}],[\"betterlockexecutor\",{\"_index\":13,\"name\":{\"16\":{}},\"parent\":{}}],[\"betterlockinternalerror\",{\"_index\":23,\"name\":{\"30\":{},\"92\":{}},\"parent\":{\"31\":{},\"32\":{},\"33\":{}}}],[\"betterlockinvalidargumenterror\",{\"_index\":24,\"name\":{\"34\":{},\"93\":{}},\"parent\":{\"35\":{},\"36\":{},\"37\":{},\"38\":{}}}],[\"betterlockjobabortederror\",{\"_index\":26,\"name\":{\"39\":{},\"97\":{}},\"parent\":{\"40\":{},\"41\":{},\"42\":{},\"43\":{},\"44\":{}}}],[\"betterlockjoboptions\",{\"_index\":12,\"name\":{\"12\":{}},\"parent\":{\"13\":{},\"14\":{},\"15\":{}}}],[\"betterlockkey\",{\"_index\":14,\"name\":{\"17\":{}},\"parent\":{}}],[\"betterlockoptions\",{\"_index\":2,\"name\":{\"2\":{}},\"parent\":{\"3\":{},\"4\":{},\"5\":{},\"6\":{},\"7\":{},\"8\":{},\"9\":{},\"10\":{}}}],[\"betterlockqueueejectionstrategy\",{\"_index\":11,\"name\":{\"11\":{}},\"parent\":{}}],[\"betterlockqueueoverflowerror\",{\"_index\":27,\"name\":{\"45\":{},\"96\":{}},\"parent\":{\"46\":{},\"47\":{},\"48\":{},\"49\":{},\"50\":{},\"51\":{},\"52\":{},\"53\":{}}}],[\"betterlockwaittimeouterror\",{\"_index\":31,\"name\":{\"54\":{},\"94\":{}},\"parent\":{\"55\":{},\"56\":{},\"57\":{},\"58\":{},\"59\":{},\"60\":{}}}],[\"callback\",{\"_index\":52,\"name\":{\"81\":{}},\"parent\":{}}],[\"canacquire\",{\"_index\":36,\"name\":{\"65\":{}},\"parent\":{}}],[\"constructor\",{\"_index\":17,\"name\":{\"20\":{},\"24\":{},\"31\":{},\"35\":{},\"40\":{},\"46\":{},\"55\":{},\"64\":{},\"76\":{},\"101\":{}},\"parent\":{}}],[\"default\",{\"_index\":1,\"name\":{\"1\":{}},\"parent\":{}}],[\"default_options\",{\"_index\":34,\"name\":{\"63\":{}},\"parent\":{}}],[\"default_queue_key\",{\"_index\":64,\"name\":{\"100\":{}},\"parent\":{}}],[\"ended_at\",{\"_index\":53,\"name\":{\"84\":{}},\"parent\":{}}],[\"enqueued_at\",{\"_index\":32,\"name\":{\"58\":{},\"82\":{}},\"parent\":{}}],[\"executed_at\",{\"_index\":22,\"name\":{\"27\":{},\"83\":{}},\"parent\":{}}],[\"execution_timeout\",{\"_index\":4,\"name\":{\"4\":{},\"14\":{}},\"parent\":{}}],[\"execution_timeout_id\",{\"_index\":56,\"name\":{\"87\":{}},\"parent\":{}}],[\"executor\",{\"_index\":51,\"name\":{\"80\":{}},\"parent\":{}}],[\"extend_stack_traces\",{\"_index\":9,\"name\":{\"9\":{},\"15\":{}},\"parent\":{}}],[\"home/panta/dev/pantas/better\",{\"_index\":59,\"name\":{\"90\":{}},\"parent\":{}}],[\"icallback\",{\"_index\":62,\"name\":{\"98\":{}},\"parent\":{}}],[\"icallbackexecutor\",{\"_index\":40,\"name\":{\"69\":{}},\"parent\":{}}],[\"id\",{\"_index\":49,\"name\":{\"77\":{}},\"parent\":{}}],[\"ierrorexports\",{\"_index\":45,\"name\":{\"73\":{}},\"parent\":{}}],[\"incoming_stack\",{\"_index\":57,\"name\":{\"88\":{}},\"parent\":{}}],[\"internal\",{\"_index\":33,\"name\":{\"61\":{}},\"parent\":{\"62\":{},\"69\":{},\"71\":{},\"73\":{},\"74\":{},\"90\":{},\"98\":{},\"99\":{}}}],[\"internal>.\\\"/home/panta/dev/pantas/better\",{\"_index\":61,\"name\":{},\"parent\":{\"91\":{},\"92\":{},\"93\":{},\"94\":{},\"95\":{},\"96\":{},\"97\":{}}}],[\"internal>.betterlock\",{\"_index\":35,\"name\":{},\"parent\":{\"63\":{},\"64\":{},\"65\":{},\"66\":{},\"67\":{},\"68\":{}}}],[\"internal>.icallbackexecutor\",{\"_index\":42,\"name\":{},\"parent\":{\"70\":{}}}],[\"internal>.ipromiseexecutor\",{\"_index\":44,\"name\":{},\"parent\":{\"72\":{}}}],[\"internal>.keyqueue\",{\"_index\":65,\"name\":{},\"parent\":{\"100\":{},\"101\":{},\"102\":{},\"103\":{},\"104\":{},\"105\":{}}}],[\"internal>.lockjob\",{\"_index\":48,\"name\":{},\"parent\":{\"75\":{},\"76\":{},\"77\":{},\"78\":{},\"79\":{},\"80\":{},\"81\":{},\"82\":{},\"83\":{},\"84\":{},\"85\":{},\"86\":{},\"87\":{},\"88\":{},\"89\":{}}}],[\"ipromiseexecutor\",{\"_index\":43,\"name\":{\"71\":{}},\"parent\":{}}],[\"job_count\",{\"_index\":28,\"name\":{\"49\":{}},\"parent\":{}}],[\"job_id\",{\"_index\":20,\"name\":{\"25\":{},\"41\":{},\"47\":{},\"56\":{}},\"parent\":{}}],[\"jobs\",{\"_index\":67,\"name\":{\"103\":{}},\"parent\":{}}],[\"key\",{\"_index\":66,\"name\":{\"102\":{}},\"parent\":{}}],[\"keyqueue\",{\"_index\":63,\"name\":{\"99\":{}},\"parent\":{}}],[\"keys\",{\"_index\":21,\"name\":{\"26\":{},\"42\":{},\"48\":{},\"57\":{},\"78\":{}},\"parent\":{}}],[\"kicked_out_job_id\",{\"_index\":29,\"name\":{\"50\":{}},\"parent\":{}}],[\"lock/src/errors\",{\"_index\":60,\"name\":{\"90\":{}},\"parent\":{\"91\":{},\"92\":{},\"93\":{},\"94\":{},\"95\":{},\"96\":{},\"97\":{}}}],[\"lock_name\",{\"_index\":18,\"name\":{\"21\":{},\"28\":{},\"32\":{},\"37\":{},\"43\":{},\"52\":{},\"59\":{}},\"parent\":{}}],[\"lockjob\",{\"_index\":46,\"name\":{\"74\":{}},\"parent\":{}}],[\"log\",{\"_index\":8,\"name\":{\"8\":{}},\"parent\":{}}],[\"name\",{\"_index\":7,\"name\":{\"7\":{},\"22\":{},\"29\":{},\"33\":{},\"38\":{},\"44\":{},\"53\":{},\"60\":{}},\"parent\":{}}],[\"options\",{\"_index\":54,\"name\":{\"85\":{}},\"parent\":{}}],[\"promise_tester\",{\"_index\":10,\"name\":{\"10\":{}},\"parent\":{}}],[\"queue_ejection_strategy\",{\"_index\":6,\"name\":{\"6\":{}},\"parent\":{}}],[\"queue_size\",{\"_index\":5,\"name\":{\"5\":{}},\"parent\":{}}],[\"strategy\",{\"_index\":30,\"name\":{\"51\":{}},\"parent\":{}}],[\"tostring\",{\"_index\":58,\"name\":{\"89\":{},\"105\":{}},\"parent\":{}}],[\"wait_timeout\",{\"_index\":3,\"name\":{\"3\":{},\"13\":{}},\"parent\":{}}],[\"wait_timeout_id\",{\"_index\":55,\"name\":{\"86\":{}},\"parent\":{}}],[\"waiting_count\",{\"_index\":50,\"name\":{\"79\":{}},\"parent\":{}}]],\"pipeline\":[]}}");
1
+ window.searchData = JSON.parse("{\"kinds\":{\"4\":\"Namespace\",\"32\":\"Variable\",\"64\":\"Function\",\"128\":\"Class\",\"256\":\"Interface\",\"512\":\"Constructor\",\"1024\":\"Property\",\"2048\":\"Method\",\"65536\":\"Type literal\",\"4194304\":\"Type alias\",\"8388608\":\"Reference\"},\"rows\":[{\"id\":0,\"kind\":32,\"name\":\"BetterLock\",\"url\":\"variables/BetterLock.html\",\"classes\":\"tsd-kind-variable\"},{\"id\":1,\"kind\":8388608,\"name\":\"default\",\"url\":\"modules.html#default\",\"classes\":\"tsd-kind-reference\"},{\"id\":2,\"kind\":256,\"name\":\"BetterLockOptions\",\"url\":\"interfaces/BetterLockOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"id\":3,\"kind\":1024,\"name\":\"wait_timeout\",\"url\":\"interfaces/BetterLockOptions.html#wait_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":4,\"kind\":1024,\"name\":\"execution_timeout\",\"url\":\"interfaces/BetterLockOptions.html#execution_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":5,\"kind\":1024,\"name\":\"queue_size\",\"url\":\"interfaces/BetterLockOptions.html#queue_size\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":6,\"kind\":1024,\"name\":\"queue_ejection_strategy\",\"url\":\"interfaces/BetterLockOptions.html#queue_ejection_strategy\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":7,\"kind\":2048,\"name\":\"lock_condition\",\"url\":\"interfaces/BetterLockOptions.html#lock_condition\",\"classes\":\"tsd-kind-method tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":8,\"kind\":1024,\"name\":\"name\",\"url\":\"interfaces/BetterLockOptions.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":9,\"kind\":1024,\"name\":\"log\",\"url\":\"interfaces/BetterLockOptions.html#log\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":10,\"kind\":1024,\"name\":\"extend_stack_traces\",\"url\":\"interfaces/BetterLockOptions.html#extend_stack_traces\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":11,\"kind\":2048,\"name\":\"promise_tester\",\"url\":\"interfaces/BetterLockOptions.html#promise_tester\",\"classes\":\"tsd-kind-method tsd-parent-kind-interface\",\"parent\":\"BetterLockOptions\"},{\"id\":12,\"kind\":4194304,\"name\":\"BetterLockQueueEjectionStrategy\",\"url\":\"types/BetterLockQueueEjectionStrategy.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":13,\"kind\":256,\"name\":\"BetterLockJobOptions\",\"url\":\"interfaces/BetterLockJobOptions.html\",\"classes\":\"tsd-kind-interface\"},{\"id\":14,\"kind\":1024,\"name\":\"wait_timeout\",\"url\":\"interfaces/BetterLockJobOptions.html#wait_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":15,\"kind\":1024,\"name\":\"execution_timeout\",\"url\":\"interfaces/BetterLockJobOptions.html#execution_timeout\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":16,\"kind\":1024,\"name\":\"extend_stack_traces\",\"url\":\"interfaces/BetterLockJobOptions.html#extend_stack_traces\",\"classes\":\"tsd-kind-property tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":17,\"kind\":2048,\"name\":\"lock_condition\",\"url\":\"interfaces/BetterLockJobOptions.html#lock_condition\",\"classes\":\"tsd-kind-method tsd-parent-kind-interface\",\"parent\":\"BetterLockJobOptions\"},{\"id\":18,\"kind\":4194304,\"name\":\"BetterLockExecutor\",\"url\":\"types/BetterLockExecutor.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":19,\"kind\":4194304,\"name\":\"BetterLockKey\",\"url\":\"types/BetterLockKey.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":20,\"kind\":4194304,\"name\":\"BetterLockErrorName\",\"url\":\"types/BetterLockErrorName.html\",\"classes\":\"tsd-kind-type-alias\"},{\"id\":21,\"kind\":128,\"name\":\"BetterLockError\",\"url\":\"classes/BetterLockError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":22,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":23,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":24,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockError\"},{\"id\":25,\"kind\":128,\"name\":\"BetterLockExecutionTimeoutError\",\"url\":\"classes/BetterLockExecutionTimeoutError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":26,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":27,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":28,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":29,\"kind\":1024,\"name\":\"executed_at\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#executed_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":30,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":31,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockExecutionTimeoutError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockExecutionTimeoutError\"},{\"id\":32,\"kind\":128,\"name\":\"BetterLockInternalError\",\"url\":\"classes/BetterLockInternalError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":33,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockInternalError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockInternalError\"},{\"id\":34,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockInternalError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInternalError\"},{\"id\":35,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockInternalError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInternalError\"},{\"id\":36,\"kind\":128,\"name\":\"BetterLockInvalidArgumentError\",\"url\":\"classes/BetterLockInvalidArgumentError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":37,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockInvalidArgumentError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":38,\"kind\":1024,\"name\":\"argument\",\"url\":\"classes/BetterLockInvalidArgumentError.html#argument\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":39,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockInvalidArgumentError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":40,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockInvalidArgumentError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockInvalidArgumentError\"},{\"id\":41,\"kind\":128,\"name\":\"BetterLockJobAbortedError\",\"url\":\"classes/BetterLockJobAbortedError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":42,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockJobAbortedError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":43,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockJobAbortedError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":44,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockJobAbortedError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":45,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockJobAbortedError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":46,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockJobAbortedError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockJobAbortedError\"},{\"id\":47,\"kind\":128,\"name\":\"BetterLockQueueOverflowError\",\"url\":\"classes/BetterLockQueueOverflowError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":48,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockQueueOverflowError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":49,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockQueueOverflowError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":50,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockQueueOverflowError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":51,\"kind\":1024,\"name\":\"job_count\",\"url\":\"classes/BetterLockQueueOverflowError.html#job_count\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":52,\"kind\":1024,\"name\":\"kicked_out_job_id\",\"url\":\"classes/BetterLockQueueOverflowError.html#kicked_out_job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":53,\"kind\":1024,\"name\":\"strategy\",\"url\":\"classes/BetterLockQueueOverflowError.html#strategy\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":54,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockQueueOverflowError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":55,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockQueueOverflowError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockQueueOverflowError\"},{\"id\":56,\"kind\":128,\"name\":\"BetterLockWaitTimeoutError\",\"url\":\"classes/BetterLockWaitTimeoutError.html\",\"classes\":\"tsd-kind-class\"},{\"id\":57,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/BetterLockWaitTimeoutError.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":58,\"kind\":1024,\"name\":\"job_id\",\"url\":\"classes/BetterLockWaitTimeoutError.html#job_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":59,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/BetterLockWaitTimeoutError.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":60,\"kind\":1024,\"name\":\"enqueued_at\",\"url\":\"classes/BetterLockWaitTimeoutError.html#enqueued_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":61,\"kind\":1024,\"name\":\"lock_name\",\"url\":\"classes/BetterLockWaitTimeoutError.html#lock_name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":62,\"kind\":1024,\"name\":\"name\",\"url\":\"classes/BetterLockWaitTimeoutError.html#name\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"BetterLockWaitTimeoutError\"},{\"id\":63,\"kind\":4,\"name\":\"<internal>\",\"url\":\"modules/_internal_.html\",\"classes\":\"tsd-kind-namespace\"},{\"id\":64,\"kind\":128,\"name\":\"BetterLock\",\"url\":\"classes/_internal_.BetterLock.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":65,\"kind\":1024,\"name\":\"DEFAULT_OPTIONS\",\"url\":\"classes/_internal_.BetterLock.html#DEFAULT_OPTIONS\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":66,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.BetterLock.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":67,\"kind\":2048,\"name\":\"canAcquire\",\"url\":\"classes/_internal_.BetterLock.html#canAcquire\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":68,\"kind\":2048,\"name\":\"acquire\",\"url\":\"classes/_internal_.BetterLock.html#acquire\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":69,\"kind\":2048,\"name\":\"acquireOr\",\"url\":\"classes/_internal_.BetterLock.html#acquireOr\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":70,\"kind\":2048,\"name\":\"abort\",\"url\":\"classes/_internal_.BetterLock.html#abort\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":71,\"kind\":2048,\"name\":\"abortAll\",\"url\":\"classes/_internal_.BetterLock.html#abortAll\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.BetterLock\"},{\"id\":72,\"kind\":4194304,\"name\":\"ICallbackExecutor\",\"url\":\"types/_internal_.ICallbackExecutor.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":73,\"kind\":65536,\"name\":\"__type\",\"url\":\"types/_internal_.ICallbackExecutor.html#__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-type-alias\",\"parent\":\"<internal>.ICallbackExecutor\"},{\"id\":74,\"kind\":4194304,\"name\":\"IPromiseExecutor\",\"url\":\"types/_internal_.IPromiseExecutor.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":75,\"kind\":65536,\"name\":\"__type\",\"url\":\"types/_internal_.IPromiseExecutor.html#__type\",\"classes\":\"tsd-kind-type-literal tsd-parent-kind-type-alias\",\"parent\":\"<internal>.IPromiseExecutor\"},{\"id\":76,\"kind\":4194304,\"name\":\"IErrorExports\",\"url\":\"types/_internal_.IErrorExports.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":77,\"kind\":128,\"name\":\"LockJob\",\"url\":\"classes/_internal_.LockJob.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":78,\"kind\":1024,\"name\":\"_lastId\",\"url\":\"classes/_internal_.LockJob.html#_lastId\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":79,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.LockJob.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":80,\"kind\":1024,\"name\":\"id\",\"url\":\"classes/_internal_.LockJob.html#id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":81,\"kind\":1024,\"name\":\"keys\",\"url\":\"classes/_internal_.LockJob.html#keys\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":82,\"kind\":1024,\"name\":\"waiting_count\",\"url\":\"classes/_internal_.LockJob.html#waiting_count\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":83,\"kind\":1024,\"name\":\"executor\",\"url\":\"classes/_internal_.LockJob.html#executor\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":84,\"kind\":1024,\"name\":\"callback\",\"url\":\"classes/_internal_.LockJob.html#callback\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":85,\"kind\":1024,\"name\":\"enqueued_at\",\"url\":\"classes/_internal_.LockJob.html#enqueued_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":86,\"kind\":1024,\"name\":\"executed_at\",\"url\":\"classes/_internal_.LockJob.html#executed_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":87,\"kind\":1024,\"name\":\"ended_at\",\"url\":\"classes/_internal_.LockJob.html#ended_at\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":88,\"kind\":1024,\"name\":\"options\",\"url\":\"classes/_internal_.LockJob.html#options\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":89,\"kind\":1024,\"name\":\"wait_timeout_id\",\"url\":\"classes/_internal_.LockJob.html#wait_timeout_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":90,\"kind\":1024,\"name\":\"execution_timeout_id\",\"url\":\"classes/_internal_.LockJob.html#execution_timeout_id\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":91,\"kind\":1024,\"name\":\"incoming_stack\",\"url\":\"classes/_internal_.LockJob.html#incoming_stack\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":92,\"kind\":2048,\"name\":\"toString\",\"url\":\"classes/_internal_.LockJob.html#toString\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.LockJob\"},{\"id\":93,\"kind\":4,\"name\":\"\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html\",\"classes\":\"tsd-kind-namespace tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":94,\"kind\":64,\"name\":\"isAcquisitionFailureError\",\"url\":\"functions/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.isAcquisitionFailureError.html\",\"classes\":\"tsd-kind-function tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":95,\"kind\":8388608,\"name\":\"BetterLockError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":96,\"kind\":8388608,\"name\":\"BetterLockInternalError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockInternalError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":97,\"kind\":8388608,\"name\":\"BetterLockInvalidArgumentError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockInvalidArgumentError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":98,\"kind\":8388608,\"name\":\"BetterLockWaitTimeoutError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockWaitTimeoutError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":99,\"kind\":8388608,\"name\":\"BetterLockExecutionTimeoutError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockExecutionTimeoutError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":100,\"kind\":8388608,\"name\":\"BetterLockQueueOverflowError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockQueueOverflowError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":101,\"kind\":8388608,\"name\":\"BetterLockJobAbortedError\",\"url\":\"modules/_internal_.__home_panta_dev_pantas_better_lock_src_errors_.html#BetterLockJobAbortedError\",\"classes\":\"tsd-kind-reference tsd-parent-kind-namespace\",\"parent\":\"<internal>.\\\"/home/panta/dev/pantas/better-lock/src/errors\\\"\"},{\"id\":102,\"kind\":4194304,\"name\":\"ICallback\",\"url\":\"types/_internal_.ICallback.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":103,\"kind\":128,\"name\":\"KeyQueue\",\"url\":\"classes/_internal_.KeyQueue.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-namespace\",\"parent\":\"<internal>\"},{\"id\":104,\"kind\":1024,\"name\":\"DEFAULT_QUEUE_KEY\",\"url\":\"classes/_internal_.KeyQueue.html#DEFAULT_QUEUE_KEY\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":105,\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/_internal_.KeyQueue.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":106,\"kind\":1024,\"name\":\"key\",\"url\":\"classes/_internal_.KeyQueue.html#key\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":107,\"kind\":1024,\"name\":\"jobs\",\"url\":\"classes/_internal_.KeyQueue.html#jobs\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":108,\"kind\":1024,\"name\":\"active\",\"url\":\"classes/_internal_.KeyQueue.html#active\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"},{\"id\":109,\"kind\":2048,\"name\":\"toString\",\"url\":\"classes/_internal_.KeyQueue.html#toString\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"<internal>.KeyQueue\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"parent\"],\"fieldVectors\":[[\"name/0\",[0,38.073]],[\"parent/0\",[]],[\"name/1\",[1,43.2]],[\"parent/1\",[]],[\"name/2\",[2,23.669]],[\"parent/2\",[]],[\"name/3\",[3,38.073]],[\"parent/3\",[2,2.285]],[\"name/4\",[4,38.073]],[\"parent/4\",[2,2.285]],[\"name/5\",[5,43.2]],[\"parent/5\",[2,2.285]],[\"name/6\",[6,43.2]],[\"parent/6\",[2,2.285]],[\"name/7\",[7,38.073]],[\"parent/7\",[2,2.285]],[\"name/8\",[8,25.79]],[\"parent/8\",[2,2.285]],[\"name/9\",[9,43.2]],[\"parent/9\",[2,2.285]],[\"name/10\",[10,38.073]],[\"parent/10\",[2,2.285]],[\"name/11\",[11,43.2]],[\"parent/11\",[2,2.285]],[\"name/12\",[12,43.2]],[\"parent/12\",[]],[\"name/13\",[13,30.159]],[\"parent/13\",[]],[\"name/14\",[3,38.073]],[\"parent/14\",[13,2.911]],[\"name/15\",[4,38.073]],[\"parent/15\",[13,2.911]],[\"name/16\",[10,38.073]],[\"parent/16\",[13,2.911]],[\"name/17\",[7,38.073]],[\"parent/17\",[13,2.911]],[\"name/18\",[14,43.2]],[\"parent/18\",[]],[\"name/19\",[15,43.2]],[\"parent/19\",[]],[\"name/20\",[16,43.2]],[\"parent/20\",[]],[\"name/21\",[17,30.159]],[\"parent/21\",[]],[\"name/22\",[18,23.669]],[\"parent/22\",[17,2.911]],[\"name/23\",[19,27.046]],[\"parent/23\",[17,2.911]],[\"name/24\",[8,25.79]],[\"parent/24\",[17,2.911]],[\"name/25\",[20,25.79]],[\"parent/25\",[]],[\"name/26\",[18,23.669]],[\"parent/26\",[20,2.49]],[\"name/27\",[21,32.173]],[\"parent/27\",[20,2.49]],[\"name/28\",[22,30.159]],[\"parent/28\",[20,2.49]],[\"name/29\",[23,38.073]],[\"parent/29\",[20,2.49]],[\"name/30\",[19,27.046]],[\"parent/30\",[20,2.49]],[\"name/31\",[8,25.79]],[\"parent/31\",[20,2.49]],[\"name/32\",[24,30.159]],[\"parent/32\",[]],[\"name/33\",[18,23.669]],[\"parent/33\",[24,2.911]],[\"name/34\",[19,27.046]],[\"parent/34\",[24,2.911]],[\"name/35\",[8,25.79]],[\"parent/35\",[24,2.911]],[\"name/36\",[25,28.482]],[\"parent/36\",[]],[\"name/37\",[18,23.669]],[\"parent/37\",[25,2.75]],[\"name/38\",[26,43.2]],[\"parent/38\",[25,2.75]],[\"name/39\",[19,27.046]],[\"parent/39\",[25,2.75]],[\"name/40\",[8,25.79]],[\"parent/40\",[25,2.75]],[\"name/41\",[27,27.046]],[\"parent/41\",[]],[\"name/42\",[18,23.669]],[\"parent/42\",[27,2.611]],[\"name/43\",[21,32.173]],[\"parent/43\",[27,2.611]],[\"name/44\",[22,30.159]],[\"parent/44\",[27,2.611]],[\"name/45\",[19,27.046]],[\"parent/45\",[27,2.611]],[\"name/46\",[8,25.79]],[\"parent/46\",[27,2.611]],[\"name/47\",[28,23.669]],[\"parent/47\",[]],[\"name/48\",[18,23.669]],[\"parent/48\",[28,2.285]],[\"name/49\",[21,32.173]],[\"parent/49\",[28,2.285]],[\"name/50\",[22,30.159]],[\"parent/50\",[28,2.285]],[\"name/51\",[29,43.2]],[\"parent/51\",[28,2.285]],[\"name/52\",[30,43.2]],[\"parent/52\",[28,2.285]],[\"name/53\",[31,43.2]],[\"parent/53\",[28,2.285]],[\"name/54\",[19,27.046]],[\"parent/54\",[28,2.285]],[\"name/55\",[8,25.79]],[\"parent/55\",[28,2.285]],[\"name/56\",[32,25.79]],[\"parent/56\",[]],[\"name/57\",[18,23.669]],[\"parent/57\",[32,2.49]],[\"name/58\",[21,32.173]],[\"parent/58\",[32,2.49]],[\"name/59\",[22,30.159]],[\"parent/59\",[32,2.49]],[\"name/60\",[33,38.073]],[\"parent/60\",[32,2.49]],[\"name/61\",[19,27.046]],[\"parent/61\",[32,2.49]],[\"name/62\",[8,25.79]],[\"parent/62\",[32,2.49]],[\"name/63\",[34,24.673]],[\"parent/63\",[]],[\"name/64\",[0,38.073]],[\"parent/64\",[34,2.382]],[\"name/65\",[35,43.2]],[\"parent/65\",[36,2.611]],[\"name/66\",[18,23.669]],[\"parent/66\",[36,2.611]],[\"name/67\",[37,43.2]],[\"parent/67\",[36,2.611]],[\"name/68\",[38,43.2]],[\"parent/68\",[36,2.611]],[\"name/69\",[39,43.2]],[\"parent/69\",[36,2.611]],[\"name/70\",[40,43.2]],[\"parent/70\",[36,2.611]],[\"name/71\",[41,43.2]],[\"parent/71\",[36,2.611]],[\"name/72\",[42,43.2]],[\"parent/72\",[34,2.382]],[\"name/73\",[43,38.073]],[\"parent/73\",[44,4.17]],[\"name/74\",[45,43.2]],[\"parent/74\",[34,2.382]],[\"name/75\",[43,38.073]],[\"parent/75\",[46,4.17]],[\"name/76\",[47,43.2]],[\"parent/76\",[34,2.382]],[\"name/77\",[48,43.2]],[\"parent/77\",[34,2.382]],[\"name/78\",[49,43.2]],[\"parent/78\",[50,1.907]],[\"name/79\",[18,23.669]],[\"parent/79\",[50,1.907]],[\"name/80\",[51,43.2]],[\"parent/80\",[50,1.907]],[\"name/81\",[22,30.159]],[\"parent/81\",[50,1.907]],[\"name/82\",[52,43.2]],[\"parent/82\",[50,1.907]],[\"name/83\",[53,43.2]],[\"parent/83\",[50,1.907]],[\"name/84\",[54,43.2]],[\"parent/84\",[50,1.907]],[\"name/85\",[33,38.073]],[\"parent/85\",[50,1.907]],[\"name/86\",[23,38.073]],[\"parent/86\",[50,1.907]],[\"name/87\",[55,43.2]],[\"parent/87\",[50,1.907]],[\"name/88\",[56,43.2]],[\"parent/88\",[50,1.907]],[\"name/89\",[57,43.2]],[\"parent/89\",[50,1.907]],[\"name/90\",[58,43.2]],[\"parent/90\",[50,1.907]],[\"name/91\",[59,43.2]],[\"parent/91\",[50,1.907]],[\"name/92\",[60,38.073]],[\"parent/92\",[50,1.907]],[\"name/93\",[61,30.706,62,17.537]],[\"parent/93\",[34,2.382]],[\"name/94\",[63,43.2]],[\"parent/94\",[62,1.669,64,1.744]],[\"name/95\",[17,30.159]],[\"parent/95\",[62,1.669,64,1.744]],[\"name/96\",[24,30.159]],[\"parent/96\",[62,1.669,64,1.744]],[\"name/97\",[25,28.482]],[\"parent/97\",[62,1.669,64,1.744]],[\"name/98\",[32,25.79]],[\"parent/98\",[62,1.669,64,1.744]],[\"name/99\",[20,25.79]],[\"parent/99\",[62,1.669,64,1.744]],[\"name/100\",[28,23.669]],[\"parent/100\",[62,1.669,64,1.744]],[\"name/101\",[27,27.046]],[\"parent/101\",[62,1.669,64,1.744]],[\"name/102\",[65,43.2]],[\"parent/102\",[34,2.382]],[\"name/103\",[66,43.2]],[\"parent/103\",[34,2.382]],[\"name/104\",[67,43.2]],[\"parent/104\",[68,2.75]],[\"name/105\",[18,23.669]],[\"parent/105\",[68,2.75]],[\"name/106\",[69,43.2]],[\"parent/106\",[68,2.75]],[\"name/107\",[70,43.2]],[\"parent/107\",[68,2.75]],[\"name/108\",[71,43.2]],[\"parent/108\",[68,2.75]],[\"name/109\",[60,38.073]],[\"parent/109\",[68,2.75]]],\"invertedIndex\":[[\"__type\",{\"_index\":43,\"name\":{\"73\":{},\"75\":{}},\"parent\":{}}],[\"_lastid\",{\"_index\":49,\"name\":{\"78\":{}},\"parent\":{}}],[\"abort\",{\"_index\":40,\"name\":{\"70\":{}},\"parent\":{}}],[\"abortall\",{\"_index\":41,\"name\":{\"71\":{}},\"parent\":{}}],[\"acquire\",{\"_index\":38,\"name\":{\"68\":{}},\"parent\":{}}],[\"acquireor\",{\"_index\":39,\"name\":{\"69\":{}},\"parent\":{}}],[\"active\",{\"_index\":71,\"name\":{\"108\":{}},\"parent\":{}}],[\"argument\",{\"_index\":26,\"name\":{\"38\":{}},\"parent\":{}}],[\"betterlock\",{\"_index\":0,\"name\":{\"0\":{},\"64\":{}},\"parent\":{}}],[\"betterlockerror\",{\"_index\":17,\"name\":{\"21\":{},\"95\":{}},\"parent\":{\"22\":{},\"23\":{},\"24\":{}}}],[\"betterlockerrorname\",{\"_index\":16,\"name\":{\"20\":{}},\"parent\":{}}],[\"betterlockexecutiontimeouterror\",{\"_index\":20,\"name\":{\"25\":{},\"99\":{}},\"parent\":{\"26\":{},\"27\":{},\"28\":{},\"29\":{},\"30\":{},\"31\":{}}}],[\"betterlockexecutor\",{\"_index\":14,\"name\":{\"18\":{}},\"parent\":{}}],[\"betterlockinternalerror\",{\"_index\":24,\"name\":{\"32\":{},\"96\":{}},\"parent\":{\"33\":{},\"34\":{},\"35\":{}}}],[\"betterlockinvalidargumenterror\",{\"_index\":25,\"name\":{\"36\":{},\"97\":{}},\"parent\":{\"37\":{},\"38\":{},\"39\":{},\"40\":{}}}],[\"betterlockjobabortederror\",{\"_index\":27,\"name\":{\"41\":{},\"101\":{}},\"parent\":{\"42\":{},\"43\":{},\"44\":{},\"45\":{},\"46\":{}}}],[\"betterlockjoboptions\",{\"_index\":13,\"name\":{\"13\":{}},\"parent\":{\"14\":{},\"15\":{},\"16\":{},\"17\":{}}}],[\"betterlockkey\",{\"_index\":15,\"name\":{\"19\":{}},\"parent\":{}}],[\"betterlockoptions\",{\"_index\":2,\"name\":{\"2\":{}},\"parent\":{\"3\":{},\"4\":{},\"5\":{},\"6\":{},\"7\":{},\"8\":{},\"9\":{},\"10\":{},\"11\":{}}}],[\"betterlockqueueejectionstrategy\",{\"_index\":12,\"name\":{\"12\":{}},\"parent\":{}}],[\"betterlockqueueoverflowerror\",{\"_index\":28,\"name\":{\"47\":{},\"100\":{}},\"parent\":{\"48\":{},\"49\":{},\"50\":{},\"51\":{},\"52\":{},\"53\":{},\"54\":{},\"55\":{}}}],[\"betterlockwaittimeouterror\",{\"_index\":32,\"name\":{\"56\":{},\"98\":{}},\"parent\":{\"57\":{},\"58\":{},\"59\":{},\"60\":{},\"61\":{},\"62\":{}}}],[\"callback\",{\"_index\":54,\"name\":{\"84\":{}},\"parent\":{}}],[\"canacquire\",{\"_index\":37,\"name\":{\"67\":{}},\"parent\":{}}],[\"constructor\",{\"_index\":18,\"name\":{\"22\":{},\"26\":{},\"33\":{},\"37\":{},\"42\":{},\"48\":{},\"57\":{},\"66\":{},\"79\":{},\"105\":{}},\"parent\":{}}],[\"default\",{\"_index\":1,\"name\":{\"1\":{}},\"parent\":{}}],[\"default_options\",{\"_index\":35,\"name\":{\"65\":{}},\"parent\":{}}],[\"default_queue_key\",{\"_index\":67,\"name\":{\"104\":{}},\"parent\":{}}],[\"ended_at\",{\"_index\":55,\"name\":{\"87\":{}},\"parent\":{}}],[\"enqueued_at\",{\"_index\":33,\"name\":{\"60\":{},\"85\":{}},\"parent\":{}}],[\"executed_at\",{\"_index\":23,\"name\":{\"29\":{},\"86\":{}},\"parent\":{}}],[\"execution_timeout\",{\"_index\":4,\"name\":{\"4\":{},\"15\":{}},\"parent\":{}}],[\"execution_timeout_id\",{\"_index\":58,\"name\":{\"90\":{}},\"parent\":{}}],[\"executor\",{\"_index\":53,\"name\":{\"83\":{}},\"parent\":{}}],[\"extend_stack_traces\",{\"_index\":10,\"name\":{\"10\":{},\"16\":{}},\"parent\":{}}],[\"home/panta/dev/pantas/better\",{\"_index\":61,\"name\":{\"93\":{}},\"parent\":{}}],[\"icallback\",{\"_index\":65,\"name\":{\"102\":{}},\"parent\":{}}],[\"icallbackexecutor\",{\"_index\":42,\"name\":{\"72\":{}},\"parent\":{}}],[\"id\",{\"_index\":51,\"name\":{\"80\":{}},\"parent\":{}}],[\"ierrorexports\",{\"_index\":47,\"name\":{\"76\":{}},\"parent\":{}}],[\"incoming_stack\",{\"_index\":59,\"name\":{\"91\":{}},\"parent\":{}}],[\"internal\",{\"_index\":34,\"name\":{\"63\":{}},\"parent\":{\"64\":{},\"72\":{},\"74\":{},\"76\":{},\"77\":{},\"93\":{},\"102\":{},\"103\":{}}}],[\"internal>.\\\"/home/panta/dev/pantas/better\",{\"_index\":64,\"name\":{},\"parent\":{\"94\":{},\"95\":{},\"96\":{},\"97\":{},\"98\":{},\"99\":{},\"100\":{},\"101\":{}}}],[\"internal>.betterlock\",{\"_index\":36,\"name\":{},\"parent\":{\"65\":{},\"66\":{},\"67\":{},\"68\":{},\"69\":{},\"70\":{},\"71\":{}}}],[\"internal>.icallbackexecutor\",{\"_index\":44,\"name\":{},\"parent\":{\"73\":{}}}],[\"internal>.ipromiseexecutor\",{\"_index\":46,\"name\":{},\"parent\":{\"75\":{}}}],[\"internal>.keyqueue\",{\"_index\":68,\"name\":{},\"parent\":{\"104\":{},\"105\":{},\"106\":{},\"107\":{},\"108\":{},\"109\":{}}}],[\"internal>.lockjob\",{\"_index\":50,\"name\":{},\"parent\":{\"78\":{},\"79\":{},\"80\":{},\"81\":{},\"82\":{},\"83\":{},\"84\":{},\"85\":{},\"86\":{},\"87\":{},\"88\":{},\"89\":{},\"90\":{},\"91\":{},\"92\":{}}}],[\"ipromiseexecutor\",{\"_index\":45,\"name\":{\"74\":{}},\"parent\":{}}],[\"isacquisitionfailureerror\",{\"_index\":63,\"name\":{\"94\":{}},\"parent\":{}}],[\"job_count\",{\"_index\":29,\"name\":{\"51\":{}},\"parent\":{}}],[\"job_id\",{\"_index\":21,\"name\":{\"27\":{},\"43\":{},\"49\":{},\"58\":{}},\"parent\":{}}],[\"jobs\",{\"_index\":70,\"name\":{\"107\":{}},\"parent\":{}}],[\"key\",{\"_index\":69,\"name\":{\"106\":{}},\"parent\":{}}],[\"keyqueue\",{\"_index\":66,\"name\":{\"103\":{}},\"parent\":{}}],[\"keys\",{\"_index\":22,\"name\":{\"28\":{},\"44\":{},\"50\":{},\"59\":{},\"81\":{}},\"parent\":{}}],[\"kicked_out_job_id\",{\"_index\":30,\"name\":{\"52\":{}},\"parent\":{}}],[\"lock/src/errors\",{\"_index\":62,\"name\":{\"93\":{}},\"parent\":{\"94\":{},\"95\":{},\"96\":{},\"97\":{},\"98\":{},\"99\":{},\"100\":{},\"101\":{}}}],[\"lock_condition\",{\"_index\":7,\"name\":{\"7\":{},\"17\":{}},\"parent\":{}}],[\"lock_name\",{\"_index\":19,\"name\":{\"23\":{},\"30\":{},\"34\":{},\"39\":{},\"45\":{},\"54\":{},\"61\":{}},\"parent\":{}}],[\"lockjob\",{\"_index\":48,\"name\":{\"77\":{}},\"parent\":{}}],[\"log\",{\"_index\":9,\"name\":{\"9\":{}},\"parent\":{}}],[\"name\",{\"_index\":8,\"name\":{\"8\":{},\"24\":{},\"31\":{},\"35\":{},\"40\":{},\"46\":{},\"55\":{},\"62\":{}},\"parent\":{}}],[\"options\",{\"_index\":56,\"name\":{\"88\":{}},\"parent\":{}}],[\"promise_tester\",{\"_index\":11,\"name\":{\"11\":{}},\"parent\":{}}],[\"queue_ejection_strategy\",{\"_index\":6,\"name\":{\"6\":{}},\"parent\":{}}],[\"queue_size\",{\"_index\":5,\"name\":{\"5\":{}},\"parent\":{}}],[\"strategy\",{\"_index\":31,\"name\":{\"53\":{}},\"parent\":{}}],[\"tostring\",{\"_index\":60,\"name\":{\"92\":{},\"109\":{}},\"parent\":{}}],[\"wait_timeout\",{\"_index\":3,\"name\":{\"3\":{},\"14\":{}},\"parent\":{}}],[\"wait_timeout_id\",{\"_index\":57,\"name\":{\"89\":{}},\"parent\":{}}],[\"waiting_count\",{\"_index\":52,\"name\":{\"82\":{}},\"parent\":{}}]],\"pipeline\":[]}}");