Skip to content

Commit 1e64fe7

Browse files
committed
newless constructor support
1 parent 9b0e829 commit 1e64fe7

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

index.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
module.exports = TinyQueue;
44

55
function TinyQueue(data, compare) {
6+
if (!(this instanceof TinyQueue)) return new TinyQueue(data, compare);
7+
68
this.data = data || [];
79
this.length = this.data.length;
810
this.compare = compare || defaultCompare;

test.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
'use strict';
22

33
var test = require('tape');
4-
var Queue = require('./index');
4+
var tinyQueue = require('./index');
55

66
var data = [];
77
for (var i = 0; i < 100; i++) {
@@ -13,7 +13,7 @@ var sorted = data.slice().sort(function (a, b) {
1313
});
1414

1515
test('maintains a priority queue', function (t) {
16-
var queue = new Queue();
16+
var queue = tinyQueue();
1717
for (var i = 0; i < data.length; i++) queue.push(data[i]);
1818

1919
t.equal(queue.peek(), sorted[0]);
@@ -27,7 +27,7 @@ test('maintains a priority queue', function (t) {
2727
});
2828

2929
test('accepts data in constructor', function (t) {
30-
var queue = new Queue(data.slice());
30+
var queue = tinyQueue(data.slice());
3131

3232
var result = [];
3333
while (queue.length) result.push(queue.pop());

0 commit comments

Comments
 (0)